python 多线程 thread (控制主线程跑完,子线程也关闭)

Posted 凯宾斯基

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python 多线程 thread (控制主线程跑完,子线程也关闭)相关的知识,希望对你有一定的参考价值。

import thread
from time import sleep, ctime
loops = [4,2]
def loop0():
  print ‘start loop 0 at:‘, ctime()
  sleep(4)
  print ‘loop 0 done at:‘, ctime()


def loop1():
  print ‘start loop 1 at:‘, ctime()
  sleep(2)
  print ‘loop 1 done at:‘, ctime()


def main():
  print ‘start:‘, ctime()
  a=thread.start_new_thread(loop0, ())
  thread.start_new_thread(loop1, ())
  sleep(6)
  print ‘all end:‘, ctime()


if __name__ == ‘__main__‘:
  main()

 

说明:

start_new_thread()要求一定要有前两个参数。所以,就算我们想要运行的函数不要参数,我们也 要传一个空的元组。

当脚本启动,实际就是启动了一个主线程,当主线程跑完,子线程也会随之关闭(无乱是否执行完)

主线程和子线程是同时执行的

我们可以把sleep(6)的位置改成去外部txt文件 查询值,当值为1 那么主线程跑完,子线程也随之的关闭掉

 

以上是关于python 多线程 thread (控制主线程跑完,子线程也关闭)的主要内容,如果未能解决你的问题,请参考以下文章

JavaSE-09 Thread 多线程(完整版)

python 多线程的使用

PYTHON——多线程:Thread类与线程函数

Python 3多线程编程学习笔记-基础篇

Python threading.thread.start() 不会将控制权返回给主线程

python标准库学习thread,threading多线程的介绍和使用