2016-08-29 2 views
0

popen 호출로 C++에서 시작된 프로세스를 어떻게 중단합니까 - 어떻게 SIGINT를 보내나요? 내가 인터럽트 신호와 함께 할 때 vlc을 닫고 싶습니다SIGINT를 Popen() 함수로 보내는 방법

FILE* pipe = popen("vlc", "r"); 

: 여기에 popen 호출입니다.

+2

비슷한 문제가 이미 여기에 있습니다. http://stackoverflow.com/questions/548063/kill-a-process-started-with-popen – Hayt

+0

http://stackoverflow.com/questions/548063/에서보세요. 프로세스 종료 - popen-with-popen. –

답변

0

왜 신호 처리기를 구현하고 열린 파이프에서 pclose를 수행해야합니까? VLC에 sigpipe를 보내야합니다. popen은 프로세스를 포크하는 나쁜 방법입니다. 당신은 그것으로부터 PID를 얻지 못합니다. 포크를 사용하여 동일한 작업을 수행하고 PID도 반환하는 많은 구현이 있습니다. 찾을 수없는 경우 다시 답하십시오.

관련 문제