Python 程序如何优雅的退出? Windows 下 Python 如何后台启动?

2015-08-19 16:45:14 +08:00
 popstk

问题 1 : Python 程序如何优雅的退出?
看到有些程序是直接找到 pid 然后 kill 掉的,总感觉不是很妥当
还是用信号,通知退出

问题 2 : Windows 下 Python 如何后台启动?
正做一个定时执行的工具,要兼容 Windows ,有个窗口不太好,
看到别人的都是使用服务加载的 http://blog.csdn.net/dysj4099/article/details/21896085
觉得要别人安装一个 pywin32 ,只达到一个隐藏窗口的功能,成本略高,
大家是怎么处理这种情况的?

5275 次点击
所在节点    Python
12 条回复
volqiu
2015-08-19 17:12:12 +08:00
python 其实 powershell 是可以调用 python 的,但是 windows 计划任务并不支持调用 powershell 。计划任务跑一个 bat , bat 调用 powershell , powershell 调用 python 。好像也是蛮蛋疼的。
loading
2015-08-19 17:14:54 +08:00
2.xyntservice 一直在用,还有一个功能更全,名字忘了。
wowo2088
2015-08-19 17:28:02 +08:00
2 试试 .pyw
Tink
2015-08-19 18:47:17 +08:00
已然 kill 习惯了😂
mengzhuo
2015-08-19 19:47:32 +08:00
kill 就是发信号
MrGba2z
2015-08-19 20:05:01 +08:00
已 kill 成性
pc10201
2015-08-19 21:35:59 +08:00
autoit 可以隐藏命令行窗口
jjx
2015-08-20 07:44:31 +08:00
不想做服务, 用 pywin32 的话, 随便用 srvany 之类的工具就行了, 类似的还有很多
2owe
2015-08-20 11:58:27 +08:00
supervisor 不知道符合条件不
kaneg
2015-08-20 23:15:35 +08:00
程序自己监听一个端口,需要停止的时候,给这个端口发个命令,程序自己调用 sys.exit ()退出。
popstk
2015-09-25 12:21:04 +08:00
@mengzhuo 是的,学艺不精,多谢提醒
popstk
2015-09-25 12:29:16 +08:00
最后在 windows 后台的方法用了服务,退出的方法是循环等待一个代表退出事件。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/214333

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX