Python os.WIFSTOPPED()方法
Python中的os.WIFSTOPPED()方法用于检查进程是否已经停止。此方法以os.wait()、os.system()或os.waitpid()方法返回的进程状态码作为参数,如果进程已经停止则返回True,否则返回False。
os.WIFSTOPPED 语法
os.WIFSTOPPED(status)
os.WIFSTOPPED 参数
status:该参数接受进程状态码(一个整数值),由os.system(),os.wait()或os.waitpid()方法返回。
返回类型:该方法返回一个布尔值,类为’bool’。如果进程已经停止,此方法返回True,否则返回False。
os.WIFSTOPPED 示例
os.WIFSTOPPED()方法的使用
# Python program to explain os.WIFSTOPPED() method
# importing os and signal module
import os, signal
# Create a child process
# using os.fork() method
pid = os.fork()
# pid greater than 0
# indicates the parent process
if pid :
# Send signal 'SIGSTOP'
# to child process
# using os.kill() method
# signal will cause the child
# process to stop
os.kill(pid, signal.SIGSTOP)
# Get the child's pid and
# status code using
# os.waitpid() method
info = os.waitpid(pid, os.WSTOPPED)
# info is a tuple
# info[0] represents child's pid
# info[1] represents exit status code
print("\nIn parent process")
# Check whether the child process
# has been stopped or not
# using os.WIFSTOPPED() method
isStopped = os.WIFSTOPPED(info[1])
print("Has child process been stopped?")
print(isStopped)
else :
print("In Child process")
print("Process ID:", os.getpid())
print("Hello ! Geeks")
输出:
In Child process
Process ID: 10224
Hello! Geeks
In parent process
Has child process been stopped?
True