python 多进程实现:
from multiprocessing import *
import time
import os
class clockprocess(Process):
def __init__(self,interval):
self.interval = interval
Process.__init__(self)
def run(self):
n = 5
while n> 0:
print("the processid is {0},the time is {1}".format(os.getpid(),time.ctime()))
time.sleep(self.interval)
n -= 1
if __name__ == '__main__':
p1 = clockprocess(3)
p2 = clockprocess(2)
p3 = clockprocess(4)
p1.start()
p2.start()
p3.start()
python 多进程间通讯 使用 Pipe 实现进程通信,通过multiprocessing.Pipe() 函数来创建一个管道,该函数会返回两个 PipeConnection 对象,代表管道的两个连接端(一个管道有两个连接端,分别用于连接通信的两个进程)。
#可以使用pipe 和queue 进行进程间通讯
from multiprocessing import *
import os
class myprocess(Process):
def __init__(self,child_p):
self.child_p = child_p
Process.__init__(self)
def run(self):
print("{0}进程写入数据...".format(os.getpid()))
self.child_p.send("python")
if __name__ == '__main__':
parent_p,chuld_p = Pipe()
p1 = myprocess(chuld_p)
p1.start()
print("{0}进程读取数据...".format(os.getpid()))
print(parent_p.recv())
p1.join()