- 2024-04-0227.ReentrantLock
1.与synchronized不同点:可中断可以设置超时时间可以设置公平锁,公平锁就是为了解决饥饿线程,让线程排队,先进先出,先来的线程先执行。支持多个条件变量2.与synchronized相同点都支持锁的可重入。基本格式://获取锁reentrantLock.lock();try{}finally{//必须释放锁
- 2023-12-205.经典进程同步问题
生产者消费者问题一组生产者进程和一组消费者进程共享一个初始为空,大小为n的缓冲区。当缓冲区没满时,生产者才能把消息放入缓冲区,否则必须等待,只有缓冲区不空时,消费者才能从中取出消息,否则必须等待。由于缓冲区是临界资源,它只允许一个生产者放入消息,或一个消费者从中取出消息。
- 2023-12-204.进程同步与互斥
生产者消费者问题一组生产者进程和一组消费者进程共享一个初始为空,大小为n的缓冲区。当缓冲区没满时,生产者才能把消息放入缓冲区,否则必须等待,只有缓冲区不空时,消费者才能从中取出消息,否则必须等待。由于缓冲区是临界资源,它只允许一个生产者放入消息,或一个消费者从中取出消息。
- 2023-12-02哲学家就餐问题
packagecom.shenzhen.dai;importlombok.AllArgsConstructor;importlombok.Data;importjava.util.ArrayList;importjava.util.List;importjava.util.Random;publicclassPhilosopherextendsThread{@Data@AllArgsConstructorstaticclassCho