我想在C.
以限定的時間間隔例如我想要執行一些任務,每20秒;以下代碼是否適合此任務?在C中定義的時間間隔
的澄清,我們在與時間間隔工作目標。例如我想讀取數據包每隔20秒,並在每個間隔結束我想更改一些參數。
double blocktime = 20.000000;
clock_t current, next;
current = clock();
while(trace_read_packet(trace,packet)> 0){
//doing some tasks
next = clock();
if ((double((next - current)/CLOCKS_PER_SEC))== blocktime) // if it is end of the interval do some tasks
{
//doing some task
current = next;
}
}//end of while
和其他問題如何我可以定義與時代一起工作的循環?
什麼是你的問題? – 2013-04-04 15:11:37
只是什麼是「編寫代碼」? – Lundin 2013-04-04 15:15:52
乍一看,你的代碼可能會做或多或少你想要什麼(儘管很低效,因爲它到處跑,像瘋了一樣),但使用時間()而不是時鐘()將簡化您的代碼位。爲了使事情更有效率,我們需要更多地瞭解你的目標環境和它提供的工具(線程......) – fvu 2013-04-04 15:18:30