在Linux中,进程是操作系统进行资源分配的最小单位,有一个完整的虚拟空间,而线程则除了CPU资源外,没有其他的独立资源,即同一个进程下的多线程共享一块虚拟的资源。
所以为保证操作结果的准确性,以下情形时需要进行线程间同步。
一、当(同一/不同进程)下的线程处理文件,数据库等资源时
二、当同一进行下的线程访问处理共享资源的变量,数据时
线程间的同步方式最主要的有三种:
一、互斥锁
二、条件变量
三、信号量
在Linux中,进程是操作系统进行资源分配的最小单位,有一个完整的虚拟空间,而线程则除了CPU资源外,没有其他的独立资源,即同一个进程下的多线程共享一块虚拟的资源。
所以为保证操作结果的准确性,以下情形时需要进行线程间同步。
一、当(同一/不同进程)下的线程处理文件,数据库等资源时
二、当同一进行下的线程访问处理共享资源的变量,数据时
线程间的同步方式最主要的有三种:
一、互斥锁
二、条件变量
三、信号量