首页 > 编程语言 > 详细

6阻塞进程/ 线程的子进程/子线程之方法jion()

时间:2020-05-30 18:40:06      阅读:52      评论:0      收藏:0      [点我收藏+]
"""阻塞进程的子进程之方法jion()"""


"""
在父进程中创建并启动子进程后,可以调用子进程的方法jion(),这样子进程就会把父进程
阻塞。父进程等子进程执行完后再被阻塞的地方继续执行。
在调用方法jion()时,可以指定参数timeout,设置阻塞时间
"""

from multiprocessing import current_process, Process
import time

class MyProcess(Process):
def run(self):
print((‘子进程 %d启动‘ % current_process().pid))
time.sleep(2)
print((‘子进程 %d结束‘ % current_process().pid))


def main():
print((‘父进程 %d启动‘ % current_process().pid))

mp = MyProcess()
mp.start()

# 阻塞
# mp.join()
# 阻塞设定时间
mp.join(1)
#time.sleep(5)

print((‘父进程 %d结束‘ % current_process().pid))

if __name__ == ‘__main__‘:
main()

#############################################################################

"""阻塞线程的子线程之方法jion()"""


"""
在父线程中创建并启动子线程后,可以调用子线程的方法jion(),这样子线程就会把父线程
阻塞。父线程等子线程执行完后再被阻塞的地方继续执行。
在调用方法jion()时,可以指定参数timeout,设置阻塞时间
"""

from threading import current_thread, Thread
import time

class Mythread(Thread):
def run(self):
print((‘子线程 %s启动‘ % current_thread().getName()))
time.sleep(2)
print((‘子线程 %s结束‘ % current_thread().getName()))


print((‘父线程 %s启动‘ % current_thread().getName()))

mt = Mythread()
mt.start()

# 阻塞
#mt.join()
# 阻塞设定时间
mt.join(3)

print((‘父线程 %s结束‘ % current_thread().getName()))

6阻塞进程/ 线程的子进程/子线程之方法jion()

原文:https://www.cnblogs.com/sruzzg/p/12993940.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!