欧美三区_成人在线免费观看视频_欧美极品少妇xxxxⅹ免费视频_a级毛片免费播放_鲁一鲁中文字幕久久_亚洲一级特黄

python多線程下信號處理程序示例

系統 1610 0

本文實例為大家分享了python多線程下信號處理程序示例的具體代碼,供大家參考,具體內容如下

下面是一個網上轉載的實現思路,經過驗證,發現是可行的,就記錄下來。

思路

python多線程中要響應Ctrl+C的信號以殺死整個進程,需要:

1.把所有子線程設為Daemon;
2.使用isAlive()函數判斷所有子線程是否完成,而不是在主線程中用join()函數等待完成;
3.寫一個響應Ctrl+C信號的函數,修改全局變量,使得各子線程能夠檢測到,并正常退出。

源碼

            
#!/usr/bin/env python
#encoding: utf-8
#filename: signal_demo.py
 
import threading, signal
 
 
def do_job(i, step):
 global exited
 idx = i
 while not exited:
  if(idx < 10000000):
   print 'thread[%d]: idx=%d' % (i, idx)
   idx = idx + step
  else:
   break
 if exited:
  print 'receive a signal to exit, thread[%d] stop.' % i
 else:
  print 'thread[%d] complete.' % i
 
def sig_handler(sig, frame):
 global exited
 exited = True
 print 'receive a signal %d, exited=%d' % (sig, exited)
 
def main():
 #set signal handler
 signal.signal(signal.SIGTERM, sig_handler)
 signal.signal(signal.SIGINT, sig_handler)
 pool = []
 pool_size = 50
 for i in range(pool_size):
  t = threading.Thread(target = do_job, args = (i, pool_size))
  t.setDaemon(True)
  pool.append(t)
  t.start()
 while 1:
  alive = False
  for i in range(pool_size):
   alive = alive or pool[i].isAlive()
   if alive == True:
    break
  if not alive:
   break
 
if __name__ == '__main__':
 exited = False
 main()
          

命令行運行

            
python signal_demo.py
          

截圖

python多線程下信號處理程序示例_第1張圖片

參考文獻

Python中用Ctrl+C終止多線程程序的問題解決

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 日本午夜影院 | 人人天天夜夜 | 亚洲综合区 | 免费黄色在线 | 欧美日韩久久久 | www.尤物视频 | 丝袜 亚洲 另类 欧美 变态 | 日本福利一区 | 天天高清| 精品一二三区 | 手机av在线 | 午夜性刺激小说 | 国产亚洲精品久久久久久久久动漫 | 亚洲精品国产电影 | 毛片国产 | 中日欧洲精品视频在线 | 韩国一级免费视频 | 亚洲人6666成人观看 | 国产乱码精品一区二区三上 | 91探花 | 天堂在线资源av | 九九福利影院 | 精品免费国产一区二区三区四区介绍 | 玖玖在线免费视频 | 色婷婷综合久久久久中文一区二区 | 亚洲一级毛片 | 亚洲电影一区二区三区 | 日本色综合 | 亚洲第一视频网站 | 日韩福利在线 | 超碰97人| 9色在线 | 在线中文字幕视频 | 国产精品久久久久久中文字 | 日韩啊啊啊 | 久操免费视频 | 日夜啪 | 日本熟妇无码波多野1223 | 免费a视频在线观看 | 国产一区二区免费 | 欧美成人免费高清网站 |