Discuss / Python / 交作业

交作业

Topic source
from multiprocessing import Process, Queue
import os, time, random
import pickle


def write(q):
    print ('Process[%s] to write: ' % os.getpid())
    for value in ['A', 'b', 'c']:
        print ('Process[%s] Puts %s to queue' % (os.getpid(), value))
        q.put(value)
        time.sleep(random.random())


def read(q):
    print ('Process[%s] will read: ' % os.getpid())
    while True:
        value = q.get()
        print ('Process[%s] Get a value:%s' % (os.getpid(), value))
        time.sleep(random.random())


if __name__ == '__main__':
    q = Queue()
    pw = Process(target = write, args = (q, ))
    pr = Process(target = read,  args = (q, ))
    pw.start()
    pr.start()
    pw.join()
    pr.terminate()

操作系统:win7 x64 python3


  • 1

Reply