2014-11-04 2 views
0

ImLib2를 사용하여 Xlib 응용 프로그램에서 이미지를 주기적으로 가져옵니다. libxdo를 사용하여 응용 프로그램 창에 가짜 키 신호를 보냅니다. 약 10 분 후, 내 명령 행 프로그램은 "Killed"메시지와 함께 종료됩니다.Xlib에서 보낸 메시지의 원본 : "Killed"

저는 X 프로그래밍을 처음 접했습니다. 누군가가 "죽은"메시지가 어디에서 왔는지 알고 있습니까?

+0

모든 경고와 디버그 정보 ('gcc -Wall -Wextra -g')로 컴파일하십시오. '코어'덤프를 가능하게합니다 (어쩌면'ulimit -c'로). 그런 덤프를 얻으면'gdb' 디버거를 사용하여 사후 분석을하십시오. –

답변

0

imlib_context_set_image을 호출 할 때마다 imlib_free_image 함수를 호출하지 않아서 문제가 발생한 것으로 보입니다. 내부 루프는 이제 다음과 같이 보입니다 :

Imlib_Image ii = imlib_create_image_from_drawable(0,x,y,w,h,1); 
imlib_context_set_image(ii); 
DATA32 *data = imlib_image_get_data(); 
examine_data(data); 
imlib_free_image(); 
1

"&"과 함께 명령 줄 프로그램을 시작하여 백그라운드에 넣으시겠습니까? 그렇다면 명령 앞에 "nohup"을 수행해야 할 수도 있습니다. 이처럼 호출 아마, grab.sh라고 프로그램을해야합니다 가정 : 당신이

echo TMOUT is $TMOUT 

을 할 경우

nohup grab.sh & 

을하고 무슨 일이 일어나고있다

TMOUT is 600 

를 참조하여 $TMOUT 초 동안 비활성 상태가 된 후 명령을 실행 한 터미널 세션이 종료되어 프로세스가 종료됩니다. nohup 명령을 사용하면 프로세스가 종료되지 않습니다.

+0

아아아스 아니오, 전 &.없이 전경에서 실행합니다. 나는 nohup에 관해 듣지 않고 있었다. 그래서 나는 그것을 어떻게해서든지 시험해 볼 것이다. .. – user2023370

관련 문제