天天看点

子线程和主线程业务依次执行循环50次

子线程业务:循环10次

主线程业务:循环20次

这两个循环(业务)需要交替执行共50次

要用到共同数据的(包括同步锁)或共同算法(加密解密)的若干个方法应该归在同一个类上,这种设计正好体现了高内聚和程序的健壮性

中使用while防止假唤醒,使用if就不行

虚假唤醒就是一些obj.wait()会在除了obj.notify()和obj.notifyall()的其他情况被唤醒,而此时是不应该返回的,所以要加条件判断。

使用lock和condition改写代码

<a href="http://tianxingzhe.blog.51cto.com/3390077/1716805" target="_blank">http://tianxingzhe.blog.51cto.com/3390077/1716805</a>

继续阅读