最近在看stay大神的下载框架课程,碰到一个问题,下载的状态莫名其妙的改变了,让人很蛋疼,为此还特意请教了stay,后面发现了可能是线程操作导致的问题,下面用一个demo来描述问题。
按照上面代码的逻辑,肯定先走的2,再走1,也就是打印的顺序应该是 0 1 2 3 4 5 ,但实际结果如下图
既然结果是这样,仔细想了下,按照逻辑虽然代码的走向是先走2,再走1,但是2只是把线程创建了,紧接着就开始执行1,打印count的代码在子线程里,执行2的时候并没有执行打印count,所以这样的结果就可以理解了。