Related Articles

Related Articles

Python | os.kill() method
  • Last Updated : 27 Aug, 2019

OS module in Python provides functions for interacting with the operating system. OS comes under Python’s standard utility modules. This module provides a portable way of using operating system dependent functionality.

os.kill() method in Python is used to send specified signal to the process with specified process id. Constants for the specific signals available on the host platform are defined in the signal module.

Syntax: os.kill(pid, sig)

Parameters:
pid: An integer value representing process id to which signal is to be sent.
sig An integer representing signal number or the signal constant available on the host platform defined in the signal module to be sent.

Return type: This method does not return any value.



Code: Use of os.kill() method

filter_none

edit
close

play_arrow

link
brightness_4
code

# Python program to explain os.kill() 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 :
      
  
      
    print("\nIn parent process")
  
    # send signal 'SIGSTOP'
    # to the child process
    # using os.kill() method
    # 'SIGSTOP' signal will
    # cause the process to stop
    os.kill(pid, signal.SIGSTOP)
       
    print("Signal sent, child stopped.")
  
  
  
    info = os.waitpid(pid, os.WSTOPPED)
    # waitpid() method returns a
    # tuple whose first attribute 
    # represents child's pid
    # and second attribute
    # represnting child's status indication  
  
    # os.WSTOPSIG() returns the signal number
    # which caused the process to stop
    stopSignal = os.WSTOPSIG(info[1])
    print("Child stopped due to signal no:", stopSignal)
    print("Signal name:", signal.Signals(stopSignal).name)
  
      
    # send signal 'SIGCONT'
    # to the child process
    # using os.kill() method
    # 'SIGCONT' signal will
    # cause the process to continue
    os.kill(pid, signal.SIGCONT) 
    print("\nSignal sent, child continued.")
      
      
else :
      
    print("\nIn child process")
    print("Process ID:", os.getpid())
    print("Hello ! Geeks")
    print("Exiting")

chevron_right


Output:

In child process

In parent process
Signal sent, child stopped.
Child stopped due to signal no: 19
Signal name: SIGSTOP

Signal sent, child continued.

Process ID: 5166
Hello! Geeks
Exiting

References: https://docs.python.org/3/library/os.html#os.kill

Attention geek! Strengthen your foundations with the Python Programming Foundation Course and learn the basics.

To begin with, your interview preparations Enhance your Data Structures concepts with the Python DS Course.




My Personal Notes arrow_drop_up
Recommended Articles
Page :