signal-handling

    3

    3답변

    왜 sem_wait을 신호 처리기 (특히 스레드 당 SIGSEGV 신호)에서 사용할 수 없습니까? 누군가가 응용 프로그램을 중단시킬 예제 시나리오를 줄 수 있습니까? 나는 sem_wait이 모두 재진입과 스레드 안전 인 것 같아 여기에 무슨 문제가 있습니까? 왜 그렇지 않습니까 비동기 안전?

    1

    2답변

    이 내가 무엇을 시도했다입니다 ... from sun.misc import Signal from sun.misc import SignalHandler class InterruptHandler(SignalHandler): def handle(self): print "Shutting down server..." Signal.ha

    1

    1답변

    신호 처리기가 작동하는 방식을 연구하려고합니다. 나는 내가 100us에 한 번씩 경보 신호를 발생시키는 코드를 작성했다. 그러나 신호는 발생하지 않습니다. #include <signal.h> #include <ucontext.h> #include <sys/time.h> #include<unistd.h> #include<setjmp.h> #inclu

    2

    2답변

    만 그들 중 두 사람은 처리 될 것이며 나머지는 무시됩니다 : #include <stdio.h> #include <unistd.h> #include <signal.h> int id; void handler(int s) { id++; int i; for(i=0; i<3; i++) { printf("Si

    0

    1답변

    2 개의 프로그램 (저에게 쓴)이 있습니다. "MAN"이라는 첫 번째 호출은 백그라운드에서 실행될 프로세스 인 "D"(두 번째 호출)를 호출합니다.이 프로세스는 몇 가지 방법으로 종료 될 때까지 종료됩니다. 내가 Ctrl + C를 사용하여 MAN을 종료하려고 제대로 사람을 종료 D. 을 종료하지 않고 MAN을 종료하고 싶습니다 지금은 D 그러나 때, 계속

    7

    1답변

    POSIX 타이머 (timer_create())를 사용하는 프로그램이 있습니다. 본질적으로 프로그램은 타이머를 설정하고 길고 (잠재적으로 무한한) 계산을 시작합니다. 타이머가 만료되고 신호 처리기가 호출되면 처리기는 아직 계산되어 프로그램을 종료 한 최상의 결과를 인쇄합니다. OpenMP를 사용하여 계산을 병렬로 수행하는 것이 속도가 빨라지므로이를 고려해야

    0

    2답변

    나는 (sa_mask를 사용하여) 핸들러가 실행 중일 때 시그널이 마스킹되는 것을 숨길 수 있다는 것을 알고있다. 그러나 일부 전역 변수를 업데이트 할 때 신호를 마스크하는 방법을 알고 싶습니다. 또한 특정 사용자 정의 함수가 실행될 때 신호를 마스크하는 방법을 알고 싶습니다. 이 두 가지 작업을 수행 할 수 있습니까? 어떤 도움을 감사

    13

    2답변

    신호를 처리해야하는 셸 프로그램을 작성하고 있습니다. #include <signal.h> ... #include <sys/types.h> ... void installSigactions(int, struct sigaction*); void handler_function(int signal_id); ... /*define signal table

    1

    1답변

    SIGINT 시그널을 처리하기 위해 생성 된 함수가 상수 루프에 갇혀 있습니다. 아이디어는 CTRL-C를 부모 프로세스가 무시하도록하지만 자식 프로세스로 보냄으로써 기본값으로 처리합니다. CTRL-C를 누르면 신호 처리기 함수가 호출되지만 무한 루프에 빠지게됩니다. kill 호출은 보낸 사람 프로세스를 제외한 프로세스 그룹의 모든 프로세스에 SIGTERM을

    4

    2답변

    신호 처리 문제가 있습니다. SIGINT 신호를받는다면 "Recieved Signal"을 출력해야한다고 가정하십시오. 십초 내에 핸들러가 다른 신호를 접수에 경우, 나는이 같은 내 코드를 만든 다음 상태 1. 와 종료 "종료"를 인쇄해야합니다 : ++ #include <stdio.h> #include <signal.h> #include <unistd.h