当前位置 : 主页 > 手机开发 > ROM >

创建进程的两种方式

来源:互联网 收集:自由互联 发布时间:2021-06-10
# 创建进程的两种方式 # 创建进程第一种方法 # from multiprocessing import Process # import time ### def run(name): # print(‘%s running‘%name) # time.sleep(3) # print(‘%s over‘%name) ### # 在windows中创建进程时
# 创建进程的两种方式

# 创建进程第一种方法
# from multiprocessing import Process
# import time
#
#
# def run(name):
#     print(‘%s running‘%name)
#     time.sleep(3)
#     print(‘%s over‘%name)
#
#
# # 在windows中创建进程时,他会像导入模块一样加载一遍代码,所以创建子进程时,他不会走if __name__ == ‘__main__‘:
# # 下面的代码块,解决了无限创建进程的问题
# if __name__ == ‘__main__‘:
#     p = Process(target=run, args=(‘egon‘,))  # 创建一个进程对象
#     p.start()  # 告诉操作系统创建一个进程
#     print(‘主进程‘)

‘‘‘
p.start()告诉操作系统创建一个进程后
操作系统会去内存中开辟一个空间
然后像导入模块一样将代码放进一个独立的内存中

进程与进程之间是隔离的,无法直接进行交互
我们可以通过一些技术,实现交互
‘‘‘

# 创建进程的第二种方法
# 通过继承进程类,创造进程,类似于继承元类
from multiprocessing import Process
import time


class MyProcess(Process):
    def __init__(self,name):
        super().__init__()
        self.name = name

    def run(self):
        print(%s is running%self.name)
        time.sleep(3)
        print(%s is over%self.name)


if __name__ == __main__:
    p = MyProcess(json)
    p.start()
    print()
网友评论