本帖最后由 Zero霖 于 2014-3-26 13:23 编辑
没啥关系,只要启动这两个线程之间没有插入比如某个线程调用join()方法的语句就行。比如t1.start();t2.start();此时有3个线程,主线程、t1和t2线程,这3个线程会共同抢夺CPU的执行权。但如果是t1.start();t1.join();t2.start();当主线程执行到t1.join()语句时,主线程被冻结并释放CPU的执行权,此时t1线程已经开启,而t2线程没开启,故只有t1有执行资格,所以t1抢到了CPU的执行权,等t1执行完后主线程被唤醒再开启t2线程,然后主线程和t2线程共同抢夺CPU的执行权。 |