尽可能作到低耦合高内聚。 灵活性更大, 高耦合就会形成若是有需求的修改将难以修改的尴尬局面。测试
关于消费者生产者的典型例题、 初步模型以下:3d
四部分组成。 为了解决资源共享问题。 用了构造方法。确保使用的是同一块资源。 若是使用new ShareResource();则须要生产者和消费者分别取new两块资源。而不是一块资源,没有达到资源共享的目的。blog
初步阶段,测试的结果是输出所有为凤姐-女的性别紊乱问题。资源
若是在共享资源的push和popup中间加入Thread.sleep()。则性别紊乱的结果会更加的明显。 同步
解决方法:方法
性别紊乱的问题解决方法就是用同步。synchronizeim
等待和唤醒:db
Lock机制中如何唤醒和等待:img
死锁:e2e