ctrl-c handler

리눅스 콘솔 프로그램에서 ctrl-c 를 눌러 프로그램을 종료하기 전에 처리해야 할일이 있다면 signal함수를 사용하여 처리 함수를 등록하면 된다.

#include <stdio.h>
#include <signal.h>

bool forever = true;

void sighandler(int sig)
{
    forever = false;
}

int main(int argc, char *argv[])
{
        signal(SIGABRT, &sighandler);
	signal(SIGTERM, &sighandler);
	signal(SIGINT, &sighandler);

	while(forever)
	{
	}
} 


더 자세한 내용은 여기에
http://www.cplusplus.com/forum/beginner/1501/

Leave a comment