python 多线程 Threading
2018-02-27 14:37
399 查看
简单的多线程:python 2.7
运行结果:
t1.join()的作用的是阻塞等待子线程t1退出,才返回往下执行
实验1
将t1.join() 这句注释掉:
运行结果:
主线程退出的时候,子线程也一起退出了
没有机会输入数据。
实验2:
将t1.join() 这句注释掉:
将t1.setDaemon(True) 这句也注释掉:
运行结果:
主线程退出,子线程还在运行,还可以输入数据
# -*- coding: utf-8 -*- import threading def run_thread(): while True: cmd = input("input you choice: ") print(cmd) if cmd == 0: print("Thread Exit") break else: print("Thread Running") t1 = threading.Thread(target=run_thread) t1.setDaemon(True) t1.start() print('join') t1.join() print('End')
运行结果:
input you choice: join 1 1 Thread Running input you choice: 2 2 Thread Running input you choice: 0 0 Thread Exit End Process finished with exit code 0
t1.join()的作用的是阻塞等待子线程t1退出,才返回往下执行
实验1
将t1.join() 这句注释掉:
# -*- coding: utf-8 -*- import threading def run_thread(): while True: cmd = input("input you choice: ") print(cmd) if cmd == 0: print("Thread Exit") break else: print("Thread Running") t1 = threading.Thread(target=run_thread) t1.setDaemon(True) t1.start() print('join') #t1.join() print('End')
运行结果:
joininput you choice: End Process finished with exit code 0
主线程退出的时候,子线程也一起退出了
没有机会输入数据。
实验2:
将t1.join() 这句注释掉:
将t1.setDaemon(True) 这句也注释掉:
# -*- coding: utf-8 -*- import threading def run_thread(): while True: cmd = input("input you choice: ") print(cmd) if cmd == 0: print("Thread Exit") break else: print("Thread Running") t1 = threading.Thread(target=run_thread) #t1.setDaemon(True) t1.start() print('join') #t1.join()
运行结果:
joininput you choice: End 1 1 Thread Running input you choice: 2 2 Thread Running input you choice: 5 5 Thread Running input you choice: 0 0 Thread Exit Process finished with exit code 0
主线程退出,子线程还在运行,还可以输入数据
相关文章推荐
- python 多线程 —— threading.Threading()
- Python的多线程(threading)与多进程(multiprocessing )
- Python:使用threading模块实现多线程(转)
- [python] 专题八.多线程编程之thread和threading
- python学习笔记之使用threading模块实现多线程(转)
- python多线程threading
- Python标准库08 多线程与同步 (threading包)
- Python 多线程(threading模块)
- Python标准库 多线程与同步 (threading包)
- Python学习【第26篇】:Python系列- 多线程(threading)
- Python模块学习 ---- threading 多线程控制和处理
- Python模块学习 ---- threading 多线程控制和处理
- Python模块学习:threading 多线程控制和处理
- python 多线程之threading
- python--threading多线程总结
- Python3 多线程 学习 threading
- 【Python】threading.Event模块控制多线程
- python--threading多线程总结
- python 多线程 —— threading.Lock()
- Python模块学习:threading 多线程控制和处理