Python学习笔记24:多进程

#多进程
——进程间通讯(IPC:InterProcessCommunication)
——进程之间无任何共享状态



import multiprocessing
from time import sleep, ctime
class ClockProcess(multiprocessing.Process):
def __init__(self, interval):
super().__init__()
self.interval = interval

def run(self):
while True:
print('The time is %s'%ctime())
sleep(self, interval)

if __name__ == '__main__':
p = ClockProcess(3)
p.start()
while True:
print('sleeping......')
sleep(1)


sleeping......
Process ClockProcess-1:
Traceback (most recent call last):
File "C:\Users\Bruce\AppData\Local\Programs\Python\Python37\lib\multiprocessing\process.py", line 297, in _bootstrap
self.run()
File "C:\迅雷下载\demo.py", line 81, in run
sleep(self, interval)
NameError: name 'interval' is not defined
The time is Mon Dec 24 23:38:25 2018
sleeping......
sleeping......
sleeping......
sleeping......
sleeping......
sleeping......
sleeping......
sleeping......
sleeping......
sleeping......
sleeping......
sleeping......
sleeping......
sleeping......
sleeping......
sleeping......
sleeping......

Process finished with exit code -1

 

 

 

from multiprocessing import Process
import os
def info(title):
print(title)
print('module name:', __name__)
#得到父进程的id
print('parent process:', os.getppid())
#得到本身进程的id
print('process id:', os.getpid())

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

if __name__ == '__main__':
info('main line')
p = Process(target = f, args = ('bob',))
p.start()
p.join()

main line
module name: __main__
parent process: 94984
process id: 103092
function f
module name: __mp_main__
parent process: 103092
process id: 21428
hello bob

Process finished with exit code 0

posted @ 2018-12-25 00:05  凯撒鸡肉卷  阅读(445)  评论(0编辑  收藏  举报