void
settick
(int val)
;
設定定時間的間隔時間tick,若設定tick為1000,且任務的定時器時間為1000,則任務會在1秒後執行,預設tick為1秒,最小tick時間為1us。
void
addtimertask
(timertask task,
int val,
int autoreset,
void
*arg)
;
task_start
(test2, arg)
//body
arg *temp =
(arg*
)arg;
temp->ret = temp->a + temp->b;
printf
("this is a test2\n");
task_end
task_start(name, arg)是任務頭,name是任務名,arg是引數位址,task_end是任務結尾。任務體內可編寫正常的c語言**,並使用引數arg指標。
autoreset有兩個可選項:autoreset(重複執行),noreset(執行一次)。
若沒有引數,可將arg引數設定為null。
void
timerwait()
;
用於等待任務列表中所有任務執行完畢。
void
timerstop()
;
用於停止定時器。
void
starttimer()
;
用於啟動定時器。
#include
#include
"timer.h"
typedef
struct argumentarg;
//任務1,列印語句
task_start
(test1, arg)
printf
("this is a test1\n");
task_end
//任務2,計算arg中兩個數的和,列印語句
task_start
(test2, arg)
arg *temp =
(arg*
)arg;
temp->ret = temp->a + temp->b;
printf
("this is a test2\n");
task_end
//任務3,列印語句
task_start
(test3, arg)
printf
("this is a test3\n");
task_end
void
main()
執行結果:
C C 定時器製作
三種不同精度的睡眠 unsigned int sleep unsigned int seconds 睡眠多少秒,睡眠被訊號中斷,返回剩餘的睡眠時間 int usleep useconds t usec 睡眠多少微秒,int nanosleep const struct timespec req,st...
學員操作 製作秒錶定時器
點選開始按鈕進行秒錶計時 點選暫停按鈕可以停止計時 點選重置按鈕可以清零時間 doctype html html head meta charset utf 8 title 計時器 title style wrap btn style head body div class wrap input t...
定時器和延時器(利用定時器製作倒計時)
一 延時器 settimeout 1.延時器 settimeout 的工作方式是 當設定乙個延時器是5s後進行時,並不代表它5s後就立即執行,只是代表它5s後會被加入佇列,如果5s後,佇列沒有其他東西,那麼延時器的 會立即執行,否則會延遲執行。因此,關於延時器最重要的一點是 指定的時間間隔 如設定5...