linux下同一個(gè)進(jìn)程中多個(gè)定時(shí)器實(shí)現(xiàn)。簡單描述下定時(shí)器模塊的實(shí)現(xiàn),有一個(gè)manager單例類保存所有CTimer對象,開啟一線程運(yùn)行延遲函數(shù),每次延遲間隔到,掃描保存CTimer的容器,對每個(gè)CTimer對象執(zhí)行減少時(shí)間操作,減少到0則執(zhí)行回調(diào)函數(shù)。對一次性CTimer,超時(shí)則從容器中刪除,循環(huán)型的將間隔時(shí)間重置,不從容器中移除。
CTimer的start執(zhí)行將對象插入到manager容器中操作;stop執(zhí)行將對象從manager容器中刪除的操作;reset執(zhí)行先刪除,重置間隔,然后再放到容器中,reset不改變CTimer的定時(shí)器類型屬性。
代碼來源于CppExplore,感謝博客主的共享。
標(biāo)簽:
linux
定時(shí)器
進(jìn)程
模塊
上傳時(shí)間:
2017-01-03
上傳用戶:daguda