2009-10-06 71 views
1

我有一個使用工作線程多線程的擴展,如here所示。 每當worker線程返回主線程的值時,我正在更新UI,並且我再次啓動該線程,因爲我想持續執行該操作。我不能使用setInterval,因爲內部線程是對C++ XPCOM組件函數的調用,它會套接字recv阻塞調用,並且接收可能不是週期性的。如何在Firefox關閉時關閉線程

現在,當我關閉Firefox時,Firefox窗口關閉,但Firefox進程繼續運行並消耗99%的CPU。所以我總是需要強制關閉這個過程。

如何完全關閉該過程。 擴展是在覆蓋這樣

<overlay id="helloworldOverlay" xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"> 
<statusbar id="status-bar"> 
. 
. 
. 
</statusbar> 
</overlay> 
+0

什麼是線程在做什麼?你爲什麼不把setInterval放在主線程中? – Peter 2009-10-06 15:02:35

+0

我不能使用setInterval,因爲內部線程是對C++ XPCOM組件函數的調用,它會套接字recv阻塞調用,並且接收可能不是週期性的。 – Xinus 2009-10-06 15:04:01

回答