- 论坛徽章:
- 0
|
刚才用子线程又建了一个孙线程,企图用子线程结束的方式结束孙线程,结果发现孙线程并不会随着子线程的退出而退出,而是随着父线程的退出而退出{:3_188:}- #!/usr/bin/python
- # -*- coding: UTF-8 -*-
- import time
- import thread
- import threading
- flag = 0
- def grandson(xxx,yyy):
- for i in range(0,20):
- time.sleep(1)
- print "grandson"
- def son(xxx,yyy):
- global flag
- u = threading.Thread(target=grandson,args=(1,2))
- u.setDaemon(True)
- u.start()
- while True:
- if flag == 1:
- break
- time.sleep(1)
- print "son"
- def father():
- global flag
- t = threading.Thread(target=son,args=(1,2))
- t.setDaemon(True)
- t.start()
- i = 0
- while True:
- if i == 5:
- flag = 1
- time.sleep(1)
- i = i + 1
- print "father"
- if __name__ == "__main__":
- father()
复制代码 |
|