我有几个线程和一个互斥体。一个线程可以锁定此互斥体,我想另一个线程来解开这个互斥体,但下面的错误被抛出:如何让一个线程解锁另一个线程锁定的互斥锁?
Attempt to unlock a mutex which is locked by another thread
我怎么能忽略这个错误?或有另一种解决方案?
编辑
我有几个线程,将做的工作。当第一个线程开始工作时,它会锁定互斥锁。其他人可能会出现并开始做同样的工作。在完成作业的最后一个线程(provavelemnte,而不是第一个)之后,它必须解除互斥锁。
因此,第一个线程锁定互斥锁,并且最后一个线程解锁。
这就是互斥体应该如何工作 - 你不能锁定它从一个线程和其他解锁。你是通过使用互斥体试图解决的问题是什么?可能互斥体是不是你的正确选择 –