05两个线程并发执行以下代码,假设a是全局变量,初始为1,那么以下输出______是可能的?
正确答案是A、B、C、D2、3情况:线程1读入值1,增加1,值2返回内存,显示2;然后,线程2读入值2,增加1,值3返回内存,显示值3。3、2情况:根据对称性,与2、3情况相同。2、2情况:线程1读入1后,线程2运行,读入1,然后线程1运行,增加1,值2返回内存,显示2,然后线程2运行,增加1,值2返回内存,显示2。(线程1、2可互换)3、3情况:线程1读入1,增加1,值2返回内存,结果2显示前线程2运行,增加1,值2返回内存,显示3,然后线程1运行,从内存读入3,显示3。
来自:并发和同步-并发(后序会删除)