2010-07-12 42 views

回答

0

我的解決方案是使用陷阱(「CLD」),以便在子進程結束時捕獲SIGCLD並減少計數器(a全局變量)正在運行的進程。

1

一個很好的問題,但我不認爲Ruby中有這樣的方法,至少不是在標準庫中。有很多寶石出現在那裏......

這個問題雖然聽起來像是一個互斥類的工作。查閱條件變量here,瞭解如何使用Ruby的互斥鎖。

+0

謝謝你,你的鏈接指出我正確的答案。 – giancarlo 2010-07-13 18:57:14

0

我通常有一個要完成的任務Queue,然後有幾個線程消耗任務,直到他們收到一個指示工作結束的項目。 Thread庫下的「Programming Ruby」中有一個例子。 (我不確定是否應該將示例複製並粘貼到堆棧溢出 - 對不起)

相關問題