C/C++教程

多进程的调用(multiprocessing.Process)

本文主要是介绍多进程的调用(multiprocessing.Process),对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
import multiprocessing, time, os

# def pro(name):
#  print('hello', name, time.ctime())
#
# if __name__ == '__main__':
#  l = []
#  for t in range(4):
#     t = multiprocessing.Process(target=pro, args=('alex',))
#     t.start()
#     l.append(t)
#  for t in l:
#     t.join()
#  print('end...')


# class MyProcess(multiprocessing.Process):
#  def __init__(self, city):
#     super(MyProcess, self).__init__()
#     self.city = city
#
#  def run(self):
#     '''继承同样重写run方法'''
#     print('hello', self.name, time.ctime()) # self.name代表进程名MyProcess-1,MyProcess-2,MyProcess-3,MyProcess-4
#
# if __name__ == '__main__':
#  l = []
#  for t in range(4):
#     t = MyProcess('China')
#     # t.daemon = True # 和线程不一样的是,进程是daemon且不是方法而是属性,直接赋值True就行
#     t.start()
#     l.append(t)
#  for t in l:
#     t.join()
#  print('end...')


def info(title):
   print('title:', title)
   print('父进程ID:', os.getppid()) # os.getppid()所运行进程的父进程ID,主进程的父进程是pacharm程序
   print('该进程ID:', os.getpid()) # os.getpid()所运行进程ID

def f(name):
   info(name)
   print('hello', name)

if __name__ == '__main__':
   f('main process line')
   time.sleep(1)
   p = multiprocessing.Process(target=f, args=('alex',))
   p.start()
   p.join()
这篇关于多进程的调用(multiprocessing.Process)的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!