Synchronization 仅使用一个互斥来同步多个资源是正常做法吗?

Synchronization 仅使用一个互斥来同步多个资源是正常做法吗?,synchronization,locking,pthreads,mutex,deadlock,Synchronization,Locking,Pthreads,Mutex,Deadlock,我正在编写一个使用pthread mutex的应用程序。有一些部分负责不同的作业,一部分用于写入文件(文件描述符资源),第二部分用于处理队列(队列变量),第三部分用于处理计时器(计时器变量),等等。从这个角度来看,对不同的作业使用不同的互斥体是否正确?让我清除互斥体-:“互斥锁通常用于串行访问不能由多个线程同时执行的可重入代码段。互斥对象只允许一个线程进入受控部分,迫使试图访问该部分的其他线程等待,直到第一个线程从该部分退出。” 仅使用一个互斥来同步多个互斥对象是否正常 一种资源 这完全取决于您

我正在编写一个使用pthread mutex的应用程序。有一些部分负责不同的作业,一部分用于写入文件(文件描述符资源),第二部分用于处理队列(队列变量),第三部分用于处理计时器(计时器变量),等等。从这个角度来看,对不同的作业使用不同的互斥体是否正确?

让我清除互斥体-:“互斥锁通常用于串行访问不能由多个线程同时执行的可重入代码段。互斥对象只允许一个线程进入受控部分,迫使试图访问该部分的其他线程等待,直到第一个线程从该部分退出。”

仅使用一个互斥来同步多个互斥对象是否正常 一种资源

这完全取决于您的应用程序。如果这些资源相互依赖,而您无法并行执行,那么这是正常的

从这一点来看,使用不同的互斥体是否正确 不同的工作

是的,您应该使用不同的互斥锁,这样您可以同时执行不同的任务。因为在这种情况下,作业彼此不同