线程,是不是打破了“程序是顺序执行“的真谛?如一个main函数中,顺序定义了二个线程,并启动,第一个线程还没执行完,第二个线程就开始执行了
2017-12-04 11:55
836 查看
线程,是不是打破了“程序是顺序执行“的真谛?如一个main函数中,顺序定义了二个线程,并启动,第一个线程还没执行完,第二个线程就开始执行了。
![](https://img-blog.csdn.net/20171204114513704?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvSWRlYWxpdHlfaHVudGVy/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
答案是:
没有。
1)main函数中的如下代码是顺序执行的:
Thread thread = new Thread(runnable);
thread.start();
Thread thread2 = new Thread(runnable2);
thread2.start();
2)每一个线程的runnable中的run代码是顺序执行的。
3)thread.start();这一句这是让线程启动,而不是等线程执行完。
总结:
”程序是顺序执行的“看来要加个限定了,任何真理都有一定的适用条件,就像”相对论“,在某种情况下也不适用一样。
”程序是顺序执行的“这个真谛,要改为“原子程序(即最小单元的不可分割的程序)是顺序执行的”。
答案是:
没有。
1)main函数中的如下代码是顺序执行的:
Thread thread = new Thread(runnable);
thread.start();
Thread thread2 = new Thread(runnable2);
thread2.start();
2)每一个线程的runnable中的run代码是顺序执行的。
3)thread.start();这一句这是让线程启动,而不是等线程执行完。
总结:
”程序是顺序执行的“看来要加个限定了,任何真理都有一定的适用条件,就像”相对论“,在某种情况下也不适用一样。
”程序是顺序执行的“这个真谛,要改为“原子程序(即最小单元的不可分割的程序)是顺序执行的”。
相关文章推荐
- 使用main函数的参数,实现一个整数计算器,程序可以接受三个参数,第一个参数“-a”选项执行加法,“-s”选项执行减法,“-m”选项执行乘法,“-d”选项执行除法,后面两个参数为操作数。
- 使用main函数的参数,实现一个整数计算器,程序可以接受三个参数,第一个参数“-a”选项执行加法,“-s”选项执行减法,“-m”选项执行乘法,“-d”选项执行除法,后面两个参数为操作数。
- 使用main函数的参数,实现一个整数计算器,程序可以接受三个参数,第一个参数“-a”选项执行加法,“-s”选项执行减法,“-m”选项执行乘法,“-d”选项执行除法,后面两个参数为操作数。
- 使用main函数的参数,实现一个整数计算器,程序可以接受三个参数,第一个参数“-a”选项执行加法,“-s”选项执行减法,“-m”选项执行乘法,“-d”选项执行除法,后面两个参数为操作数。
- 使用main函数的参数,实现一个整数计算器,程序可以接受三个参数,第一个参数“-a”选项执行加法,“-s”选项执行减法,“-m”选项执行乘法,“-d”选项执行除法,后面两个参数为操作数。
- 汇编语言: 试编制一个程序:从键盘输入一行字符,要求第一个键入的字符必须是空格符,如不 是,则退出程序;如是,则开始接收键入的字符并顺序存放在首地址为buffer的缓冲区中(空 格符不存入),直到接收
- 使用main函数的参数,实现一个整数计算器,程序可以接受三个参数,第一个参数“-a”选项执行加法,“-s”选项执行减法,“-m”选项执行乘法,“-d”选项执行除法,后面两个参数为操作数。
- 使用main函数的参数,实现一个整数计算器,程序可以接受三个参数,第一个参数“-a”选项执行加法,“-s”选项执行减法,“-m”选项执行乘法,“-d”选项执行除法,后面两个参数为操作数。
- Linux内核如何装载和启动一个可执行程序
- 编写一个程序,开启3个线程,这3个线程的ID分别为A、B、C,每个线程将自己的ID在屏幕上打印10遍,要求输出结果必须按ABC的顺序显示;如:ABCABC….依次递推
- 用JAVA写一个多线程程序,写四个线程,其中二个对一个变量加1,另外二个对一个变量减1
- iOS 通过添加线程依赖和信号量结合实现一个复杂界面请求多个接口时按指定顺序执行
- 迅雷笔试题 (JAVA多线程)启动三个线程,分别打印A B C,现在写一个程序 循环打印ABCABCABC
- MFC程序的启动过程与相关函数的执行顺序
- 一个正执行的程序如何启动另一新程序并关闭现执行程序
- Linux内核分析:实验七--Linux内核如何装载和启动一个可执行程序
- 创建一个类的对象时,程序的执行顺序(C#)
- Linux内核如何装载和启动一个可执行程序
- linux内核分析 第七周 Linux内核如何装载和启动一个可执行程序
- <仅是自己做笔记。。。系列-10>n个数字(0,1,…,n-1)形成一个圆圈,从数字0开始,每次从这个圆圈中删除第m个数字(第一个为当前数字本身,第二个为当前数字的下一个数字)。