什么是互斥锁
(1)问题分析
考官主要想考察的是资源安全这方面线程之间资源是共享的,在多线程的情况下如何保证同一时刻只能有一个线程在操作资源。
(2)核心问题讲解
每个对象都对应于一个可称为" 互斥锁" 的标记,这个标记用来保证在任一时刻,只能有一个线程访问该对象。
同一个进程中的多线程之间是共享系统资源的,多个线程同时对一个对象进行操作,一个线程操作尚未结束,另一个线程已经对其进行操作,导致最终结果出现错误,此时需要对被操作对象添加互斥锁,保证每个线程对该对象的操作都得到正确的结果。
(3)问题扩展
互斥锁:保证锁定同一个线程,修改这个完整的数据,是用户程序自己的锁。
使用情况:因为使用时暂用时间,影响其他线程等待,所以尽量修改处理块的数据后立即释放锁。
(4)结合项目中使用
无