您的位置:首页 > 其它

多线程相关内核对象使用情况对比

2015-11-03 17:22 267 查看
主线程与子线程之间要进行同步访问公共变量,子线程之间要互斥的访问公共变量。如下列出几种常用的同步互斥方法。

(1)关键段,criticalSection,可以用于线程间的互斥,不可以用于线程间同步,不能跨进程使用,有线程所有权,无需要处理“遗弃”问题。

(2)互斥量,mutex,             也可以解决互斥问题,不能解决同步问题,可以跨进程使用,拥有线程所有权,无需要处理“遗弃”问题。

(3)事件 , event,             可以解决同步问题也可以解决互斥问题,可以跨进程使用,没有线程所有权,不能处理“遗弃”问题。

(4)信号量,semaphore,用来处理主线程和子线程之间的同步问题,可以跨进程使用,不能处理“遗弃”问题。

 同步      互斥      可否跨进程使用能否处理“遗弃”问题
关键段不可以可以不能可以
互斥量不可以可以可以可以
事件可以可以可以不可以
信号量可以可以不可以
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: