[問題] C# thread suspend、resume過時

看板C_Sharp作者 (Christopher)時間15年前 (2010/05/19 22:03), 編輯推噓1(108)
留言9則, 3人參與, 最新討論串1/2 (看更多)
MSDN上標示Thread的Suspend()、Resume()方法 目前已經過時了,如果在C#內想要去讓某一個使用了很多 CPU時間的Thread暫停,待加權計算此Thread可再使用CPU 時間後再啟動此Thread,請問可以怎麼處理呢?謝謝。 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 122.116.142.105

05/19 22:19, , 1F
while(Flag Boolean){Thread.Sleep(Int32);)}
05/19 22:19, 1F

05/19 22:20, , 2F
過時還是可以用啦 只是有風險 如果這個執行緒把特定
05/19 22:20, 2F

05/19 22:20, , 3F
資源lock 你在不知道他執行到哪的情況下使用的話 它
05/19 22:20, 3F

05/19 22:21, , 4F
吃住這個資源了 可能會造成打結
05/19 22:21, 4F

05/19 22:32, , 5F
如果使用sleep會無法即時叫起thread,所以才想使用暫停
05/19 22:32, 5F

05/19 22:32, , 6F
的方式,謝謝。
05/19 22:32, 6F

05/19 22:34, , 7F
就是希望你去簡易統計一下每個Thread的使用與等待時間,
05/19 22:34, 7F

05/19 22:35, , 8F
然後尋求一個公平分配時間的方法
05/19 22:35, 8F

05/19 22:38, , 9F
每個Thread分配時間的權重,就依統計方法來處理
05/19 22:38, 9F
文章代碼(AID): #1By--nYT (C_Sharp)
文章代碼(AID): #1By--nYT (C_Sharp)