看板 LinuxDev 關於我們 聯絡資訊
※ 引述《KvsG (KvsG)》之銘言: : 大家好... 請問大家一個問題... : 因為我寫了一支程式... 需要定時做一些工作... : 但是這些工作有時會有例外情況... (當然這是我要抓的) : 偏偏發生了例外情況... 這程式不是就卡死在那裡, 不再接受下一個工作... : 就是直接 Segmentation Fault 了... 囧 : 在排除 Segmentation Fault 的情況下... 我想要解決卡死的問題... @@ : 可是找不到什麼方法來做 @@ 我找了 struct timeval 但是仍然沒有什麼頭緒... @@ : 請問有什麼方法嗎.. ?? 還是得用 thread ?? : 問得實在很沒頭沒腦... ^^" 謝謝大家看完 #include <stdio.h> #include <stdlib.h> #include <unistd.h> #include <signal.h> void alarm_handler( int signo){ fprintf( stderr, "Time Out\n"); abort(); } int main(){ /* register time out handler */ signal( SIGALRM, alarm_handler); alarm(3); /* enable the timer */ do_something(); alarm(0); /* disable the timer */ return 0; } 更細的時間單位可以 man setitimer -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.113.203.139
KvsG:謝謝大大的指點!!! 有可能不要結束整支程式嗎?? 06/05 14:26
andytzeng:也可以 man ualarm 06/06 01:21