Windows Mutex sembra consentire di acquisire nuovamente un blocco acquisito (in modo ricorsivo) se il thread attualmente proprietario del blocco tenta di acquisirlo.Come modificare il comportamento di blocco ricorsivo di Windows Mutex?
Tuttavia, i blocchi pthread basati su posix non consentono tale comportamento.
Esiste una macro di tempo di compilazione o qualsiasi impostazione che può comportare il comportamento del mutex di Windows nello stesso modo del mutex pthread?
In realtà, ho questo problema relativo al codice precedente e voglio risolverlo senza modificare gran parte della logica. Quindi, volevo sapere se il comportamento può essere modificato. Il mio codice dovrebbe funzionare in più SO, quindi voglio che il comportamento rimanga uguale su tutto il sistema operativo. "Sembra che tu stia cercando di utilizzare lo stesso oggetto di sincronizzazione in più posti in modo inappropriato." - Sì. È il caso di uno scenario negativo. Voglio solo che il comportamento sia lo stesso in tutti i sistemi operativi nello scenario negativo. Grazie per la tua risposta! – Jay
Bene, usa un semaforo boost. Multipiattaforma e non rientranti. –
+1 (il commento di follow-up è buono come la risposta). – WhozCraig