Python| os.WIFCONTINUED() 方法
Python中的OS 模块提供了与操作系统交互的功能。操作系统属于 Python 的标准实用程序模块。该模块提供了一种使用操作系统相关功能的可移植方式。
Python中的os.WIFCONTINUED()
方法用于检查进程是否从作业控制停止继续。该方法将os.wait()
、 os.system()
或os.waitpid()
方法返回的进程状态码作为参数,如果进程已停止则返回 True,否则返回 False。
Syntax: os.WIFCONTINUED(status)
Parameter:
status: This parameter takes process status code (an integer value) as returned by os.system(), os.wait() or os.waitpid() method.
Return type: This method returns a boolean value of class ‘bool’. This method returns True if the process has been continued from a job control stop, otherwise returns False.
代码:使用os.WIFCONTINUED()
方法
# Python program to explain os.WIFCONTINUED() 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 'SIGCONT' will cause
# the child process to stop
os.kill(pid, signal.SIGSTOP)
# Send signal 'SIGCONT'
# to child process
# using os.kill() method
# SIGCONT signal will cause
# the child process to continue
os.kill(pid, signal.SIGCONT)
# Get the child's pid and
# status code using
# os.waitpid() method
info = os.waitpid(pid, os.WCONTINUED)
# 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 continued
# from a job control stop or not
# using os.WIFCONTINUED() method
continued = os.WIFCONTINUED(info[1])
print("Has child process been continued from a job control stop?")
print(continued)
else :
print("In Child process")
print("Process ID:", os.getpid())
print("Hello ! Geeks")
In Child process
Process ID: 12371
Hello! Geeks
In parent process
Has child process been continued from a job control stop?
True
参考资料: https://docs。 Python.org/3/library/os.html#os.WIFCONTINUED