python主程序启动多个线程后 如何让主线程挂起 并接受外部指令停掉进程

power0811 2010-03-15 05:45:45
假设 有个主程序 main.py , 它启动后有启动了多个线程 , 如何做到让主程序挂起 等待接收外部指令 退出
不要用while循环

还有 希望达到的效果是可以通过外部指令启动和关闭main.py, 例如: main.py start/main.py stop

多谢指教
...全文
820 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
海楓 2010-03-20
  • 打赏
  • 举报
回复
可用一個文件標識或網絡端口通知程序退出。
其實系統底層都是用循環的,如果不想那麼顯示就用其它庫吧,twisted或其它有事件驅動的庫。


notax 2010-03-17
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 thy38 的回复:]

Windows上基本就没什么好方法能杀死线程。
[/Quote]

嗯,好像没kill线程的API,网上看看,用sys settrace,很特别
thy38 2010-03-17
  • 打赏
  • 举报
回复
Windows上基本就没什么好方法能杀死线程。
hubeihc 2010-03-16
  • 打赏
  • 举报
回复
import threading,若start,则创建一个子线程,在子线程中使用while一直执行,然后主线程join(),若stop,则kill这个程序。
angel_su 2010-03-16
  • 打赏
  • 举报
回复
不是很懂多线程,好像用列队模式join()方法,那么主线程是阻塞的,不用特别去些啥的...
利用外部命令结束嘛,可以在启动多个线程时记录pid到一个文件上,新起一个程序实例时可检查系统里python进程和文件记录的pid如果一致就做关闭动作,不然照常规正常执行。
power0811 2010-03-16
  • 打赏
  • 举报
回复
有人知道么

37,719

社区成员

发帖
与我相关
我的任务
社区描述
JavaScript,VBScript,AngleScript,ActionScript,Shell,Perl,Ruby,Lua,Tcl,Scala,MaxScript 等脚本语言交流。
社区管理员
  • 脚本语言(Perl/Python)社区
  • IT.BOB
加入社区
  • 近7日
  • 近30日
  • 至今

试试用AI创作助手写篇文章吧