异步事件直接用锁实现,生产者消费者并不适用于任何异步场景