008面试题__多线程并发_互斥锁_死锁

1.多线程并发的问题/解决方法

--问:由于线程切换的时机不确定,导致操作顺序出现了混乱 ,产生不正常后果-->出现死循环
--解:锁机制(给方法上锁,给要锁的代码块锁上)

2.互斥锁

--当使用多个synchronized锁定多个代码片段,并且指定的锁对象相同

3.死锁

--1.问:当两个线程各自持有一个锁的过程中等待对方先释放锁时,就会形成一种僵持状态,导致程序卡住且无法再继续往后面执行
--问题所在:锁中套锁(synchronized嵌套)
--2.当无法避免嵌套时,就必须保证多个线程锁对象的持有顺序必须一致
--答:A线程在持有锁1的过程中去持有锁2时,b线程也要以这样的顺序进行

posted @ 2022-04-02 19:22  Y_Zoran  阅读(39)  评论(0)    收藏  举报
-->