Python | método os.kill()

El módulo OS en Python proporciona funciones para interactuar con el sistema operativo. OS viene bajo los módulos de utilidad estándar de Python. Este módulo proporciona una forma portátil de usar la funcionalidad dependiente del sistema operativo.
El método os.kill() en Python se usa para enviar una señal específica al proceso con una identificación de proceso específica. Las constantes para las señales específicas disponibles en la plataforma host se definen en el módulo de señales .

Sintaxis: os.kill(pid, sig)
Parámetros:  
pid: un valor entero que representa la identificación del proceso al que se enviará la señal. 
sig Un número entero que representa el número de señal o la constante de señal disponible en la plataforma host definida en el módulo de señal que se va a enviar.
Tipo de devolución: este método no devuelve ningún valor. 
 

Código: Uso del método   os.kill()

Python3

# 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
    # representing 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")
Producción: 

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

 

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

Publicación traducida automáticamente

Artículo escrito por ihritik y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *