首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > J2SE开发 >

关于多线程的有关问题 就解答。

2013-10-10 
关于多线程的问题 就解答。。。。。。。。。。。。。。。。。。。。用4个线程 2个让i++另外2个让i--打印出来 虽然最终结果是100

关于多线程的问题 就解答。。。。。。。。。。。。。。。。。。。。
用4个线程 2个让i++  另外2个让i--   打印出来 虽然最终结果是100  (i一开始等于100)  但是中间不明白的是 i=101 i=102...这样一直下去  换个线程打印的时候显示的是i=  差很远的数字。。  也就是说没有接着原来的数字加减。。  
下面是代码 本人初识多线程求大神们解答



相差很远么?
可能是如此。
线程A 在打印的时候,正准备打印 i=100;
这个时候,线程B抢去了资源,让A没有打印。于是线程B就连续进行了20次相加。
结果最后打印出i=120;
这个时候,线程A再夺回执行权。
但是他打印的结果,却依然按照100进行打印。
但是如果A属于减的线程,那么下一条应该是打印出119.而不是99.

当然,线程具有一些不确定性,我也不了解,而且你这里有这么多,具体可能出现更加难以理解的情况吧。

热点排行