- 博客(2)
- 收藏
- 关注
原创 以哲学家问题来理解一次死锁的四个条件
1. 问题基本介绍5个哲学家5根筷子。通过信号量chopstick[5]来表示获取信号量。但当5个哲学家同时拿起筷子时,则会造成死锁。2.死锁四个条件我们来看看死锁四个必要条件①资源是唯一的(筷子单位为1根)②请求并占有:每个哲学家请求另一个筷子,但不释放其自己的筷子③资源不可剥夺:哲学家之间不会抢筷子④资源和请求形成一个循环层级。(哲学家之间至少出现形成一个资源请求环的情况)3.死锁的条件破坏那么问题来这里我们如何利用各种方法破坏死锁呢预防死锁:(破坏必要条件)①破坏请求:将筷子一双
2021-03-10 22:58:21
839
原创 关于Java中LinkedList作为栈使用的理解
我们知道,LinkedList是可以作为栈来使用的,即使其没有栈相关的方法的(他们的共同点就是都是AbstractList的子类)。要查看其如何作为栈使用,就要去看相关的方法pop方法push方法peek方法结论总结来看,LinkedList作为栈使用的方法本质是将List的首部作为栈顶来操作。...
2021-02-27 13:01:30
1116
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人