看板 Programming 關於我們 聯絡資訊
最近自學了多執行緒的寫法 程式設計上也還測試OK 但是還是想進一步加快速度 目前我有一個function(int i) i=0~99 我只會傻傻地將i的個數切成四分 0~24 25~49 50~74 75~99 然後開四個執行緒去跑 因為每一個function的執行時間快慢不一 可能有一個執行緒跑完25個 另外一個只跑了10個 跑完的那個還是要等沒跑完的 感覺這樣有點浪費..... 請問有沒有寫法讓時間均勻一點? 比如說讓執行緒去自動去抓還沒跑完的i 還請版友幫忙 謝謝 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 122.117.112.106
akasan:每個thread 只取一些消化完了再繼續拿 114.36.172.61 10/27 20:07
WPC001:看你的function複雜度~~ 生成一個thread是 114.43.68.208 10/28 00:50
WPC001:相當消耗資源的... 當然要讓他多做一些事再 114.43.68.208 10/28 00:51
WPC001:結束... 114.43.68.208 10/28 00:51
WPC001:把工作切得太小,變成浪費時間在產生thread 114.43.68.208 10/28 00:52
WPC001:要避免系統資源浪費在資料的分配與重組上~~ 114.43.68.208 10/28 01:01
jokingfish:目前我是開4個thread 請問是要多開幾個122.117.112.106 10/28 11:23
jokingfish:若CPU有空閒 就會自動去抓那些還沒跑122.117.112.106 10/28 11:25
jokingfish:的thread 是這樣嗎?122.117.112.106 10/28 11:25