Discuss / Python / 我是windows的系统 运行有这样的问题 有哪位帮忙解答一下嘛

我是windows的系统 运行有这样的问题 有哪位帮忙解答一下嘛

Topic source

渡俊

#1 Created at ... [Delete] [Delete and Lock User]

from multiprocessing import Process import os

子进程要执行的代码

def run_proc(name): print('Run child process %s (%s)...' % (name, os.getpid()))

if name=='main': print('Parent process %s.' % os.getpid()) p = Process(target=run_proc, args=('test',)) print('Child process will start.') p.start() p.join() print('Child process end.') 得到: Parent process 3216. Child process will start. Child process end.(得到的结果中,系统好像没运行run_proc函数,少了打印那行) 下面我修改了一行 就打印出来了,我修改在P =Process()那行 如下 from multiprocessing import Process import os

子进程要执行的代码

def run_proc(name): print('Run child process %s (%s)...' % (name, os.getpid()))

if name=='main': print('Parent process %s.' % os.getpid()) p = Process(target=run_proc('test')) print('Child process will start.') p.start() p.join() print('Child process end.') 得到正常输出: Parent process 7296. Run child process test (7296)... Child process will start. Child process end. 哪位大侠或女侠帮帮忙呗。

廖雪峰

#2 Created at ... [Delete] [Delete and Lock User]

你的代码是错的,子进程id不可能和父进程一样

你的代码只是调用了run_proc()跟进程一点关系没有

小哲syz

#3 Created at ... [Delete] [Delete and Lock User]

遇到了同样的问题,不能执行run_proc函数

小哲syz

#4 Created at ... [Delete] [Delete and Lock User]

修改了一下你的代码,可以运行run_proc(),但pid

和父进程一样

在此插入代码

from multiprocessing import Process import os def run_proc(name): print('Run child process %s (%s)...' % (name, os.getpid()))

if name=='main': print('Parent process %s.' % os.getpid()) p = Process(target=run_proc, args=('test',)) print('Child process will start.') p.start() p.run() p.join() print('Child process end.')

小哲syz

#5 Created at ... [Delete] [Delete and Lock User]

你把你的.py文件在cmd窗口打开,可以正常运行


  • 1

Reply