2007年01月09日 星期二 22:51
ÇëÎÊ£¬ÈçºÎÔÚ³ÌÐòÍ˳öµÄʱºòÖ´ÐÐÒ»¶Î´úÂë ÎÒ¿ªÊ¼ÓÃÁËatexit.register(foobar)£¬ºóÀ´·¢ÏÖÕâÖ»¶ÔÕý³£ÖÕÖ¹µÄ³ÌÐò Æð×÷Óã¬ÇëÎÊÈçºÎ²ÅÄÜ×öµ½µ±ÃüÁîÐгÌÐò±»Óû§¹Ø±Õʱ£¬³ÌÐòÔÚij¸ö ÈÕÖ¾ÎļþÀïдÈëÒ»¶ÎÎÄ×Ö£¿ ÕæÐÄÇë½Ì£¬Ð»Ð»£¡ -------------- 下一部分 -------------- Ò»¸öHTML¸½¼þ±»ÒƳý... URL: http://python.cn/pipermail/python-chinese/attachments/20070109/9126261a/attachment.htm
2007年01月10日 星期三 10:06
junyi sun wrote: > 请问,如何在程序退出的时候执行一段代码 > 我开始用了atexit.register(foobar),后来发现这只对正常终止的程序 > 起作用,请问如何才能做到当命令行程序被用户关闭时,程序在某个 > 日志文件里写入一段文字? > 真心请教,谢谢! > ------------------------------------------------------------------------ > > 这个比较难吧,假如在unix上任务被直接kill -9杀掉,根本没有机会再去写日志就 退出了
2007年01月10日 星期三 11:14
On 1/9/07, junyi sun <ccnusjy在gmail.com> wrote: > 请问,如何在程序退出的时候执行一段代码 > 我开始用了atexit.register(foobar),后来发现这只对正常终止的程序 > 起作用,请问如何才能做到当命令行程序被用户关闭时,程序在某个 > 日志文件里写入一段文字? > > 真心请教,谢谢! > 另起一个监视的进程,发现该进程不见了就写日志。这样会不会好一些。 -- Best Regards, Leo Jay
2007年01月10日 星期三 11:18
¿ÖűØÐëÒª×öÁ½¸öÊØ»¤½ø³ÌÁË¡£»¥ÏàÊØ»¤£¬ÕâÑù²ÅÄܱ£Ö¤Ð´ÏÂÈÕÖ¾£¬µ«Èç¹û·¢ÉúÈçͻȻ¶ÏµçµÈÇé¿öµÄʱºò£¬¿ÉÄÜ»¹ÊÇÎÞ·¨Ð´ÈÕÖ¾µÄ¡£ Óиö°ì·¨ÊÇÒ»Ö±²»¶ÏµÄдÈÕÖ¾£¬¼Ç¼µ±Ç°µÄÇé¿ö£¬ÕâÑùµÄ×ö·¨»¹±ØÐëÿ¸ôÒ»¶Îʱ¼ä¾Í°ÑÒÔÇ°µÄÈÕÖ¾Òª¸øÇå³ýÒ»±é¡£ ----- Original Message ----- From: "Leo Jay" <python.leojay在gmail.com> To: <python-chinese在lists.python.cn> Sent: Wednesday, January 10, 2007 11:14 AM Subject: Re: [python-chinese]ÈçºÎÔÚ³ÌÐòÍ˳öµÄʱºòÖ´ÐÐÒ»¶Î´úÂë > On 1/9/07, junyi sun <ccnusjy在gmail.com> wrote: >> ÇëÎÊ£¬ÈçºÎÔÚ³ÌÐòÍ˳öµÄʱºòÖ´ÐÐÒ»¶Î´úÂë >> ÎÒ¿ªÊ¼ÓÃÁËatexit.register(foobar)£¬ºóÀ´·¢ÏÖÕâÖ»¶ÔÕý³£ÖÕÖ¹µÄ³ÌÐò >> Æð×÷Óã¬ÇëÎÊÈçºÎ²ÅÄÜ×öµ½µ±ÃüÁîÐгÌÐò±»Óû§¹Ø±Õʱ£¬³ÌÐòÔÚij¸ö >> ÈÕÖ¾ÎļþÀïдÈëÒ»¶ÎÎÄ×Ö£¿ >> >> ÕæÐÄÇë½Ì£¬Ð»Ð»£¡ >> > > ÁíÆðÒ»¸ö¼àÊӵĽø³Ì£¬·¢Ïָýø³Ì²»¼ûÁ˾ÍдÈÕÖ¾¡£ÕâÑù»á²»»áºÃһЩ¡£ > > > > -- > Best Regards, > Leo Jay > _______________________________________________ > python-chinese > Post: send python-chinese在lists.python.cn > Subscribe: send subscribe to python-chinese-request在lists.python.cn > Unsubscribe: send unsubscribe to python-chinese-request在lists.python.cn > Detail Info: http://python.cn/mailman/listinfo/python-chinese >
2007年01月10日 星期三 11:37
On 1/9/07, junyi sun <ccnusjy at gmail.com> wrote: > > 请问,如何在程序退出的时候执行一段代码 > 我开始用了atexit.register(foobar),后来发现这只对正常终止的程序 > 起作用,请问如何才能做到当命令行程序被用户关闭时,程序在某个 > 日志文件里写入一段文字? > > 真心请教,谢谢! > > > > _______________________________________________ > python-chinese > Post: send python-chinese at lists.python.cn > Subscribe: send subscribe to python-chinese-request at lists.python.cn > Unsubscribe: send unsubscribe to python-chinese-request at lists.python.cn > Detail Info: http://python.cn/mailman/listinfo/python-chinese > 不是所有情况都能做到这一点,不过 Ctrl+C 是可以被捕获到的: In [2]: try: ...: while True:pass ...: except KeyboardInterrupt: ...: print 'Ctrl+C' ...: Ctrl+C -- http://codeplayer.blogspot.com/ -------------- next part -------------- An HTML attachment was scrubbed... URL: http://python.cn/pipermail/python-chinese/attachments/20070110/1cdeddf6/attachment.html
2007年01月10日 星期三 11:45
On 1/10/07, yi huang <yi.codeplayer在gmail.com> wrote: > > 不是所有情况都能做到这一点,不过 Ctrl+C 是可以被捕获到的: > In [2]: try: > ...: while True:pass > ...: except KeyboardInterrupt: > ...: print 'Ctrl+C' > ...: > Ctrl+C > Ctrl+Break不能被捕获到。 -- Best Regards, Leo Jay
2007年01月10日 星期三 11:45
没有办法, 如果kill -s 9, 你的进程会被 SIGKILL 信号直接 kill 掉, 因为 SIGKILL 是无法劫获的. 不过你可以在进程里随时记录当前状态写如日志. junyi sun 写道: > 请问,如何在程序退出的时候执行一段代码 > 我开始用了atexit.register(foobar),后来发现这只对正常终止的程序 > 起作用,请问如何才能做到当命令行程序被用户关闭时,程序在某个 > 日志文件里写入一段文字? > 真心请教,谢谢! > ------------------------------------------------------------------------ > > _______________________________________________ > python-chinese > Post: send python-chinese at lists.python.cn > Subscribe: send subscribe to python-chinese-request at lists.python.cn > Unsubscribe: send unsubscribe to python-chinese-request at lists.python.cn > Detail Info: http://python.cn/mailman/listinfo/python-chinese
2007年01月10日 星期三 11:56
按照你的需求好像只能这样子做了.强烈同意Leo Jay! > On 1/9/07, junyi sun <ccnusjy在gmail.com> wrote: >> 请问,如何在程序退出的时候执行一段代码 >> 我开始用了atexit.register(foobar),后来发现这只对正常终止的程序 >> 起作用,请问如何才能做到当命令行程序被用户关闭时,程序在某个 >> 日志文件里写入一段文字? >> >> 真心请教,谢谢! >> > > 另起一个监视的进程,发现该进程不见了就写日志。这样会不会好一些。
2007年01月10日 星期三 15:11
лл´ó¼ÒµÄÈÈÐÄ°ïÖú£¬ÎÒ»¹ÊDzÉȡÿ¸öÒ»¶Îʱ¼ä¾ÍдÈëÎļþµÄ·½°¸°É¡£ On 1/10/07, IQDoctor <huanghao.c在gmail.com> wrote: > > ûÓа취, Èç¹ûkill -s 9, > ÄãµÄ½ø³Ì»á±» SIGKILL ÐźÅÖ±½Ó kill µô, ÒòΪ SIGKILL ÊÇÎÞ·¨½Ù»ñµÄ. > > ²»¹ýÄã¿ÉÒÔÔÚ½ø³ÌÀïËæʱ¼Ç¼µ±Ç°×´Ì¬Ð´ÈçÈÕÖ¾. > > junyi sun дµÀ: > > ÇëÎÊ£¬ÈçºÎÔÚ³ÌÐòÍ˳öµÄʱºòÖ´ÐÐÒ»¶Î´úÂë > > ÎÒ¿ªÊ¼ÓÃÁËatexit.register(foobar)£¬ºóÀ´·¢ÏÖÕâÖ»¶ÔÕý³£ÖÕÖ¹µÄ³ÌÐò > > Æð×÷Óã¬ÇëÎÊÈçºÎ²ÅÄÜ×öµ½µ±ÃüÁîÐгÌÐò±»Óû§¹Ø±Õʱ£¬³ÌÐòÔÚij¸ö > > ÈÕÖ¾ÎļþÀïдÈëÒ»¶ÎÎÄ×Ö£¿ > > ÕæÐÄÇë½Ì£¬Ð»Ð»£¡ > > ------------------------------------------------------------------------ > > > > _______________________________________________ > > python-chinese > > Post: send python-chinese在lists.python.cn > > Subscribe: send subscribe to python-chinese-request在lists.python.cn > > Unsubscribe: send unsubscribe to python-chinese-request在lists.python.cn > > Detail Info: http://python.cn/mailman/listinfo/python-chinese > > _______________________________________________ > python-chinese > Post: send python-chinese在lists.python.cn > Subscribe: send subscribe to python-chinese-request在lists.python.cn > Unsubscribe: send unsubscribe to python-chinese-request在lists.python.cn > Detail Info: http://python.cn/mailman/listinfo/python-chinese -------------- 下一部分 -------------- Ò»¸öHTML¸½¼þ±»ÒƳý... URL: http://python.cn/pipermail/python-chinese/attachments/20070110/40ddf84c/attachment.htm
2007年01月11日 星期四 15:26
junyi sun wrote: > 请问,如何在程序退出的时候执行一段代码 > 我开始用了atexit.register(foobar),后来发现这只对正常终止的程序 > 起作用,请问如何才能做到当命令行程序被用户关闭时,程序在某个 > 日志文件里写入一段文字? > 真心请教,谢谢! > ------------------------------------------------------------------------ 过一段时间就把当前信息保存,作为一个restart文件,文件里的信息要足够下次启 动的时候从该处继续. 下次启动的时候假如发现有restart文件,就可以选择是否从上次的任务继续或者是 重新开始.我在用的 一个大型软件就是这样做的.
Zeuux © 2025
京ICP备05028076号