在linux thread 裡面
使用到while(1)無窮回圈時
一般想在定時如200ms 執行一個副程式很多都是使用加一個delay
但又不想影響到在同個loop迴圈下面的程式,最少是還沒有執行要加的
200ms的副程式,是否有方式可以做重複定時後執行? Time 可以使用?
作者: cs8425 (cs) 2018-08-27 23:45:00
timer、timerfd查查? 我是偷懶直接用libuv包好的
作者:
uorol (′‧ω‧‵)
2018-08-28 13:24:00看不懂你的問題...
是否可以在thread中的數個工作再拆成個別thread??
作者: cs8425 (cs) 2018-08-29 17:29:00
如果下面其他程式跑到一半剛好200ms的時候 你想要怎處理?
作者:
ckvir (ckvir)
2018-08-29 23:22:00為啥不開2個thread 然後分別跑在不同cpu 上,其中一個 thread 就能設多久跑一次了
作者: cs8425 (cs) 2018-08-31 02:35:00
還是沒回到我的問題阿 而且加thread不會動到架構吧
作者: corevalue (CCC) 2018-08-31 10:16:00
struct timeval idle_t; gettimeofday(&idle_t, NULL);idle_t_cur = (idle_t.tv_sec * 1000.0) + (idle_t.tv_if ( (idle_t_cur) >= (idle_t_pre + (200)))
我的意見是,不開新thread來處理,以後副作用更大,技術債欠的可不輕至於不加thread的解決方式就如同corevalue大所提的,自行busy loop判斷timestamp,祝你好運
如果要求時間準的話還是timer 比較好既有的程式架構既然沒辦法滿足新需求,那為什麼不能改?
所以修改成:"主管認為架構不能修改"應該就比較精準了
作者:
uranusjr (â†é€™äººæ˜¯è¶…級笨蛋)
2018-09-07 19:13:00說真的如果主管認為不需要改, 他有義務解答你的問題不應該搞到員工需要上網問別人
作者:
enthos (影斯作業系統)
2018-09-08 20:53:00blog.csdn.net/it_liuwei/article/details/78326041
作者: DontGoIntel (末日硬特爾) 2018-09-09 10:22:00
sigalarm
作者:
F04E (Fujitsu)
2017-01-08 17:23:00去問你主管怎麼實做比較好啊