多线程同步和互斥有几种实现方法,都是什么?
Posted programb
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了多线程同步和互斥有几种实现方法,都是什么?相关的知识,希望对你有一定的参考价值。
线程同步是指线程之间所具有的一种制约关系,一个线程的执行依赖另一个线程
的消息,当它没有得到另一个线程的消息时应等待,直到消息到达时才被唤醒。
线程互斥是指对于共享的进程系统资源,在各单个线程访问时的排它性。当有若
干个线程都要使用某一共享资源时,任何时刻最多只允许一个线程去使用,其它
要使用该资源的线程必须等待,直到占用资源者释放该资源。线程互斥可以看成
是一种特殊的线程同步。
线程间的同步方法大体可分为两类:用户模式和内核模式。顾名思义,内核模式
就是指利用系统内核对象的单一性来进行同步,使用时需要切换内核态与用户态,
而用户模式就是不需要切换到内核态,只在用户态完成操作。
用户模式下的方法有:原子操作(例如一个单一的全局变量),临界区。内核模
式下的方法有:事件,信号量,互斥量。
以上是关于多线程同步和互斥有几种实现方法,都是什么?的主要内容,如果未能解决你的问题,请参考以下文章