用Java实现生产者消费者的几种方法

132 阅读1分钟

链接地址

        zhuanlan.zhihu.com/p/20300609

备注

方法1:

synchronized:确保produce与consume不同时执行

synObj

wait:等待生产者生产或消费者消费

notifyAll:唤醒生产者生产或消费者消费

方法2:

lock锁:确保produce与consume不同时执行

condition:

wait:等待生产者生产或消费者消费

signalAll:唤醒生产者生产或消费者消费

方法3:

使用先有的API实现,内部逻辑同上,添加了锁对象的分析,减少竞争,提升效率