linux中线程同步和互斥的区别
2015-01-20 13:57
316 查看
相交进程之间的关系主要有两种,同步与互斥。所谓互斥,是指散步在不同进程之间的若干程序片断,当某个进程运行其中一个程序片段时,其它进程就不能运行它 们之中的任一程序片段,只能等到该进程运行完这个程序片段后才可以运行。所谓同步,是指散步在不同进程之间的若干程序片断,它们的运行必须严格按照规定的某种先后次序来运行,这种先后次序依赖于要完成的特定的任务。
显然,同步是一种更为复杂的互斥,而互斥是一种特殊的同步。
也就是说互斥是两个线程之间不可以同时运行,他们会相互排斥,必须等待一个线程运行完毕,另一个才能运行,而同步也是不能同时运行,但他是必须要按照某种次序来运行相应的线程(也是一种互斥)!
总结:
互斥:是指某一资源同时只允许一个访问者对其进行访问,具有唯一性和排它性。但互斥无法限制访问者对资源的访问顺序,即访问是无序的。
同步:是指在互斥的基础上(大多数情况),通过其它机制实现访问者对资源的有序访问。在大多数情况下,同步已经实现了互斥,特别是所有写入资源的情况必定是互斥 的。少数情况是指可以允许多个访问者同时访问资源
显然,同步是一种更为复杂的互斥,而互斥是一种特殊的同步。
也就是说互斥是两个线程之间不可以同时运行,他们会相互排斥,必须等待一个线程运行完毕,另一个才能运行,而同步也是不能同时运行,但他是必须要按照某种次序来运行相应的线程(也是一种互斥)!
总结:
互斥:是指某一资源同时只允许一个访问者对其进行访问,具有唯一性和排它性。但互斥无法限制访问者对资源的访问顺序,即访问是无序的。
同步:是指在互斥的基础上(大多数情况),通过其它机制实现访问者对资源的有序访问。在大多数情况下,同步已经实现了互斥,特别是所有写入资源的情况必定是互斥 的。少数情况是指可以允许多个访问者同时访问资源
相关文章推荐
- linux中线程同步和互斥的区别
- Linux中线程同步和互斥的区别
- linux中线程同步和互斥的区别
- 【Linux系统编程】线程同步与互斥:读写锁
- 【Linux多线程】同步与互斥的区别
- 线程同步互斥的控制方法 互斥信号量区别
- Linux 线程同步与互斥
- Linux线程同步之互斥锁
- 线程同步互斥的控制方法 互斥信号量的区别【转】
- Linux线程同步与互斥
- 【Linux多线程】同步与互斥的区别
- Linux 线程同步机制:互斥、读写锁、条件变量
- Linux 线程同步之一:互斥锁
- 线程同步和互斥机制的区别
- linux线程同步和进程同步的区别
- Linux线程同步---互斥锁
- linux多线程学习笔记四---线程同步之互斥锁、读写锁和条件变量
- 线程同步互斥方式以及区别
- linux线程同步与互斥
- 学习笔记 --- LINUX的同步互斥机制 --- 自旋锁与信号量的区别