我正在使用ImLib2定期从Xlib应用程序中获取图像;并使用libxdo将伪密钥信号发送到应用程序窗口。大约10分钟后,我的命令行程序终止,并显示消息“Killed”。
我对X编程很新。有谁知道发送“被杀”消息的位置?
答案 0 :(得分:1)
您是否使用尾随"&"启动命令行程序?把它放在后台?如果是这样,你可能还需要做一个" nohup"在命令之前。假设您的程序名为grab.sh,您应该像这样调用它:
nohup grab.sh &
如果你做了
echo TMOUT is $TMOUT
并查看
TMOUT is 600
然后发生的事情是你的终端会话,你调用命令会在$TMOUT
秒不活动后被杀死,从而终止你的进程。 nohup
命令将阻止您的进程被杀死。
答案 1 :(得分:0)
问题似乎是因为每次调用imlib_free_image
后都没有调用imlib_context_set_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();