相关疑难解决方法(0)

如果在共享内存中,pthread互斥锁是否可以跨线程工作?

我发现了这个: 快速进程间同步方法

我曾经认为pthread互斥锁只能在同一地址空间中的两个线程之间共享.

那里的问题/答案似乎意味着:

如果我有两个单独的程序A和B.它们有一个共享的内存区域M.我可以将一个pThread互斥锁放在M中,锁定在A中,锁定在B中,在A中解锁; 和B将不再阻止互斥锁.它是否正确?可以在两个独立的进程中共享pThread互斥锁吗?

编辑:我在MacOSX上使用C++.

c++ mutex pthreads process shared-memory

22
推荐指数
3
解决办法
2万
查看次数

共享内存中的std :: mutex无法正常工作

我有一个场景,共享内存区域由两个不同的进程专门访问.当我启动进程时,第一个进程成功锁定互斥锁,更新内存并解锁互斥锁.但我观察到当第二个进程试图锁定它时,它仍处于死锁状态,等待互斥锁解锁.

对于第一个和第二个进程,互斥锁之间的时间差为10秒.

我使用的是std :: mutex.请告诉我我错过了什么.

c++ multithreading mutex shared-memory stdmutex

1
推荐指数
2
解决办法
1606
查看次数