CnUnix

[알림판목록 I] [알림판목록 II] [글목록][이 전][다 음]
[ CnUnix ] in KIDS
글 쓴 이(By): wshan (같은예감)
날 짜 (Date): 1995년03월14일(화) 13시13분49초 KST
제 목(Title): [Re] signal handling


control-C가 들어오면 그 루프를 빠져나가게 하는 방법은 간단합니다.
전역변수를 하나 잡고 signal-handling하는 부분에서 그 값을 바꾸면 됩니다.

예)

while(1)
{
.......
}

=>

unsigned int flag=0;

main()
{
....
    signal(SIGINT,catchint);
....
    while(!flag) {
    .....
    }
}

int catch_sig(
int catchint(signo)
int signo;
{
     flag  = 1;
}

이렇게 하면 Control-C가 눌러졌을때 while문을 빠져나오겠죠?

답이 되셨기를...
[알림판목록 I] [알림판목록 II] [글 목록][이 전][다 음]
키 즈 는 열 린 사 람 들 의 모 임 입 니 다.