安裝:pip install schedule

schedule其實就只是個定時器,在while True死循環(huán)中,schedule.run_pending()是保持schedule一直運行,去查詢上面那一堆的任務(wù),在任務(wù)中,就可以設(shè)置不同的時間去運行。跟crontab是類似的
????????但是,如果是多個任務(wù)運行的話,實際上它們是按照順序從上往下挨個執(zhí)行的。如果上面的任務(wù)比較復(fù)雜,會影響到下面任務(wù)的運行時間。其實解決方法也很簡單:用多線程/多進(jìn)程。開了一條線程,就把job獨立出去運行了,不會占主進(jìn)程的cpu時間,schedule并沒有花掉執(zhí)行一個任務(wù)的時間,它的開銷只是開啟一條線程的時間。

????????唯一要注意的是,這里面job不應(yīng)當(dāng)是死循環(huán)類型的,也就是說,這個線程應(yīng)該有一個執(zhí)行完畢的出口。一是因為線程萬一僵死,會是非常棘手的問題;二是下一次定時任務(wù)還會開啟一個新的線程,執(zhí)行次數(shù)多了就會演變成災(zāi)難。