Fork me on GitHub

今日学习Python编程第五章的并行系统工具,然后到下面这段代码时就出了幺蛾子

import os


def child():
    print('hello from child',os.getpid())
    os._exit(0)


def parent():
    while True:
        newpid = os.fork()
        if newpid==0:
            child()
        else:
            print('hellow from parent',os.getpid())
        if input()=='q':break


parent()

运行一下报错了。。。

然后表示一脸懵逼,检查代码确实没问题,然后网上各种查都没找到解决办法,就是简单粗暴的说明为windows上面这玩意儿不能用,没有。。。嗯,和报错解释一毛一样,但是我还是不死心啊。。。
本来说以后大概可以解决这个问题,但是实际上书上下一章节就讲了这个事儿,具体解决方案有俩:
1.使用Cygwin提供类Unix的部分功能
2.windows可以使用multiproessing代替os.fork功能

posted on 2019-03-03 18:10  anyux  阅读(353)  评论(0)    收藏  举报