Re: [閒聊] 排程系統

看板mud_sanc (Sanctuary - 聖殿)作者 (揮淚斬馬雲)時間7年前 (2018/01/01 09:33), 7年前編輯推噓0(000)
留言0則, 0人參與, 最新討論串3/5 (看更多)
我其實有想過另一種 crontab 的寫法,利用 times_check.c 每 2 秒 會去呼叫一次 heart_beat 的行為,讓它額外呼叫 crontab: call_other(crontab,"check_crontab"); 然後在 check_cronrab 函數裡頭先把目前的 crontab 排程全部讀進 來做迴圈判斷 foreach(c in crontabs) { match=0; sscanf(now_times_str,"%d ...",now_min,now_hour,....); if(min==now_min || min=="*" || 判斷 "-" 的情況) match+=1; if(hour==now_hour || hour=="*" || 判斷 "-" 的情況) match+=1; . . if(match>=5) // 代表該 crontab match 到目前的時間 catch(call_other(目標物件,目標函數,傳什麼參數過去)); } 這樣做的好處是,times_check 隨時會去讀 crontab,只要有 match 到時間,它就去做了,而不需要再透過 set_times_check 的方式去設 定幾秒後該做什麼。 嘛,這樣做也不是不行,而且理論上它不會造成 times_check 的心跳 停止。 為節省時間,我先採這種做法,最近會實驗,並會採行一些必要的判斷 ,我希望使用者(wiz)能透過 crontab 指令的使用,順便學會 linux上 的 crontab 設定。 Laechan -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 111.253.164.127 ※ 文章網址: https://www.ptt.cc/bbs/mud_sanc/M.1514770418.A.EEB.html 修正寫錯的地方。 ※ 編輯: laechan (122.117.106.224), 01/01/2018 15:49:38
文章代碼(AID): #1QIO_oxh (mud_sanc)
文章代碼(AID): #1QIO_oxh (mud_sanc)