시작하기 전에이 명령 줄 도구는 아니지만 자체 명령 줄 인터페이스를 통해 명령을 받아들이는 응용 프로그램이라는 것을 분명히 밝힙니다.명령 줄 인터페이스에서 ctrl-break 신호를 처리하는 방법
편집 : 내가 전에 설명 한 내용에 대해 사과해야한다. 한 번 더 ...
나는 사용자의 명령을 받아들이는 명령 줄 인터페이스 응용 프로그램을 구축하고있다. 시그널 핸들러 셋업을 통해 시그널을 잡아 낸 다음 시그널을 설정하여 애플리케이션을 종료해야한다. 내가 겪고있는 문제는 내가 찾을 수있는 모든 콘솔 기능입니다. 즉, 사용자가 키를 누를 때까지 콘솔 처리 루프를 종료해야한다는 것을 감지 할 수 없습니다. (또는 함수에 따라 입력하십시오.).
비 블록 콘솔 상호 작용을 할 수있는 표준 방법이 있습니까, 아니면 그냥 신호 스레드에서 종료하면 제대로 처리 할 수 있도록 프로그램을 구성하는 우아한 방법이 있습니까 (제발 이것을 잘못 이해하지 말아야한다. 시그널링 스레드로부터 리소스를 잠그고 풀어서 어떻게 할 수 있는지 알고있다.하지만 이것은 지저분해질 수 있으므로 차라리 피할 것이다.)
그 설명이 더 바람직하다. ...
윈도우에서
참고 : Windows에서, 시그 코드'SIGBREAK'을 (올릴 닫기 버튼을 클릭 CTRL- 예를 들어
, 이것은 현재 스레드와 미래에 signore SIGINT, SIGTERM 및 SIGPIPE가 스레드를 산란하는 방법입니다 단절) – 56ka