导入os后,使用getpid()运行报错,但是不知道到底因为什么,求解决办法!感谢!
import time
import multiprocessing
import os
#2个要同时执行的函数
def music():
"""函数1"""
print("music子进程名字:",multiprocessing.current_process())
print("music子进程编号:",os.getgid())
print("music所属主进程的编号:",os.getppid())
for i in range(5): #执行5次
print("听音乐中。。。")
time.sleep(0.2) #延迟2秒,目的是让效果对比更明显一些
def movie(a,b):
print("movie子进程的名字:",multiprocessing.current_process())
print("movie子进程编号:",os.getgid())
print("movie所属主进程的编号:",os.getppid())
for i in range(5):
print("看视频中。。。")
time.sleep(0.2)
if __name__ =='__main__':
#创建子进程
music_process=multiprocessing.Process(target=music())
movie_process=multiprocessing.Process(target=movie,kwargs={"a":30,"b":40})
#启用进程
music_process.start()
movie_process.start()
print("主进程编号:",os.getgid())
E:\python\python.exe D:\PycharmProject\Data_exercise\multiprocess.py
music子进程名字: <_MainProcess name='MainProcess' parent=None started>
Traceback (most recent call last):
File "D:\PycharmProject\Data_exercise\multiprocess.py", line 25, in <module>
music_process=multiprocessing.Process(target=music())
File "D:\PycharmProject\Data_exercise\multiprocess.py", line 10, in music
print("music子进程编号:",os.getgid())
AttributeError: module 'os' has no attribute 'getgid'