2010-03-05 37 views

回答

0

如何使用互斥鎖?因爲互斥體會一直處於睡眠狀態,直到資源可用,您將不會遇到旋轉等待問題。

0

這讓人想起Dining Philosophers Problem。如果您的平臺支持它,您可以在多個進程中使用共享的的condition variables。有了這樣的共享條件變量,當數據可用時,Producer可以表示您的ConsumerMemory,反之亦然,Memory爲空。請記得檢查spurious wakeup

您需要檢查MacOSX pthread實現是否支持跨進程共享的條件變量。請參閱my answer to your mutex related question以確定方式。答案也適用於條件變量。

相關問題