我有一個由C#編寫的多線程應用程序,我的最大線程數爲256,並且此應用程序在Ip間隔(192.168.1.0 -192.168.205.255) 中獲得計算機的性能計數器,它工作正常並在一天內多次轉身。因爲我必須得到報告。中止非工作線程
但問題是有時一臺機器保持一個線程,永遠無法完成其工作,以便我的循環犯規轉...
還有什麼辦法來創建一個倒計時參數線程。當我在foreach中啓動線程?
foreach(Thread t in threads)
{
t.start(); -----> t.start(countdownParameter) etc....
}
coundown參數是每個線程的最大生命週期。這意味着如果一個線程無法到達一臺機器,它必須中止。例如60秒..不是256臺機器,我的意思是256個線程......大約有5000個IP,其中600個是活着的。所以我使用256個線程來讀取它們的值。另一件事是循環。我的循環正在工作,而所有的客戶端完成它從一開始就開始。
我不明白 - 你想要'countdownParameter'在這裏實現什麼? 「一臺機器保持線程」是什麼意思?這是如何阻止你的程序循環?發佈真實的代碼對於獲得有用的反饋會有很大的幫助。 – 2010-10-18 23:13:06
你有256 *機器*?還是CPU的?還是實際的「線程」?或者是什麼? – Arafangion 2010-10-18 23:21:24
@Arafangion - 我不敢問,但它看起來像一個線程,每個IP,乍一看 – 2010-10-18 23:22:55