Python中的OS模块提供了与操作系统进行交互的函数。操作系统属于Python的标准实用程序模块。该模块提供了使用依赖于操作系统的函数的便携式方法。
os.waitid()
进程使用Python中的方法来等待一个或多个子进程的完成。
用法: os.waitid(idtype, id, options)
参数:
id:一个整数值,表示要等待的子进程的ID。
idtype:idtype和id参数指定方法等待的子级。
返回类型:此方法返回一个对象,该对象表示siginfo_t结构中包含的数据。
代码1:用于os.waitid()
方法
# Python program to explain os.waitid() method
# importing os module
import os
# Create a child process
# using os.fork() method
pid = os.fork()
# a Non-zero process id (pid)
# indicates the parent process
if pid :
# Wait for the completion of
# child process using
# os.waitid() method
# Specify idtype
idtype = os.P_PID
# Specify id
id = pid
# Specify option
option = os.WEXITED
status = os.waitid(idtype, id, option)
print("\nIn parent process-")
# Print status
print("Status of child process:")
print(status)
else :
print("In Child process-")
print("Process ID:", os.getpid())
print("Hello ! Geeks")
print("Exiting..")
输出:
In Child process- Process ID: 10309 Hello! Geeks Exiting.. In parent process- Status of child process: posix.waitid_result(si_pid=10309, si_uid=1000, si_signo=17, si_status=0, si_code=1)
代码2:用于os.waitid()
方法
# Python program to explain os.waitid() method
# importing os module
import os
# Create a child process
# using os.fork() method
pid = os.fork()
# a Non-zero process id (pid)
# indicates the parent process
if pid :
# Create one more child process
pid2 = os.fork()
if pid2 :
# Wait for the completion of
# any child processes using
# os.waitid() method
# Specify idtype
idtype = os.P_ALL
# Specify id
# As idtype is os.P_ALL
# method will wait for
# any children and specified id
# is ignored.
id = pid
# Specify option
option = os.WSTOPPED | os.WEXITED
status = os.waitid(idtype, id, option)
print("\nIn parent process-")
# Print status
print("Status of completed child process:")
print(status)
else :
print("\nIn Second Child process-")
print("Process ID:", os.getpid())
print("Hey ! There ")
print("Exiting")
else :
print("In First Child process-")
print("Process ID:", os.getpid())
print("Hello ! Geeks")
print("Exiting")
输出:
In First Child process- Process ID: 11524 Hello! Geeks Exiting In Second Child process- Process ID: 11525 Hey! There Exiting In parent process- Status of completed child process: posix.waitid_result(si_pid=11524, si_uid=1000, si_signo=17, si_status=0, si_code=1)
参考文献:
相关用法
- Python next()用法及代码示例
- Python os.dup()用法及代码示例
- Python set()用法及代码示例
- Python Decimal max()用法及代码示例
- Python PIL ImageOps.fit()用法及代码示例
- Python os.rmdir()用法及代码示例
- Python sympy.det()用法及代码示例
- Python Decimal min()用法及代码示例
- Python os.readlink()用法及代码示例
- Python os.writev()用法及代码示例
- Python os.readv()用法及代码示例
- Python PIL RankFilter()用法及代码示例
- Python os.rename()用法及代码示例
- Python os.sendfile()用法及代码示例
注:本文由纯净天空筛选整理自ihritik大神的英文原创作品 Python | os.waitid() method。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。