簡單定時器實現

2021-07-25 15:19:08 字數 560 閱讀 2407

經常會遇到這樣的功能,需要開闢乙個執行緒同時迴圈的跑乙個任務,下面是簡單實現的**

呼叫select 加超時時間

#include #include #include #include #include void thread_client_timeout(const void *arg)

; printf("time out=%d, %u\n", ++count, now.tv_sec);

//.. do something;

select(0,null,null,null,&now); }}

int main(void)

pthread_join(tid_sta_timeout, &r);

printf("finished %u\n", tid_sta_timeout);

}

呼叫pthread_cond_timedwait 加超時時間

void thread_client_timeout(const void *arg)

}

簡單軟體定時器

軟體定時器 在嵌入式開發中,定時器是及其常見的,但考慮到晶元外設資源有限,可以自己寫乙個軟體定時器,應用於對計時不是太嚴格的場合,比如led的閃爍,定時處理某一任務等等。該軟體定時器的原理是基於滴答系統時鐘中斷,在中斷中獲得時間基,該時間基可由使用者自由設定。另外有兩種方式可以實現軟體定時處理功能,...

linux 實現簡單定時器的功能

對於程式中需要定時去check某些變數或者function返回結果的功能,最早就是用最簡單的sleep 的一行語句,雖然可以實現,但是需要主程式一直等待一段時間,無論是否提前有返回值。後面就想到可以用time 來實現相同的功能,和sleep不同的地方就是,如果check到有返回,可以立即break,...

Java web中簡單的定時器實現

scheduledexecutorservice executor executors.newscheduledthreadpool 1 executor.scheduleatfixedrate new echoserver 0,times,timeunit.milliseconds 單位毫秒 st...