美文网首页
多进程编程

多进程编程

作者: 求索_700e | 来源:发表于2019-07-16 14:11 被阅读0次

    问题:在将两个不同的keras模型放在一个python文件中执行的时候,总是出现各种各样的问题,而且采用多线程也不能解决问题,主要是因为线程之间是共享资源的,后来移到多进程中,完美解决。多进程可以参考一下代码,keras模型没有嵌入其中,可自行加入。

    from multiprocessing import Queue   ##注意,多进程管道通信,不能用from queue import Queue

    from multiprocessing import Process

    import os

    import time

    #将信息写入进程

    def w(q):

    print("开始写入%s"%os.getpid())

    for i in "hello":

    #将信息写入队列。

    q.put(i)

    print(i)

    #读取进程里面的信息。

    def rd(q):

    print("%s开始读取信息"%os.getpid())

    while True:

    if not q.empty():

    #从队列里面读取信息。

    time.sleep(2)

    print("read to %s" % q.get())

    if __name__=="__main__":

    #创建进程队列,通过类的实例化来实现。:

    q=Queue()

    #创建写入进程.

    t=Process(target=w,args=(q,))

    #启动写入进程。

    t.start()

    #创建读取进程。

    r=Process(target=rd,args=(q,))

    #启动读取进程。

    r.start()

    相关文章

      网友评论

          本文标题:多进程编程

          本文链接:https://www.haomeiwen.com/subject/xyzzkctx.html