2 - Multiprocessing.ipynb#

Librería Multiprocessing de Python#

La librería Multiprocessing de Python es una biblioteca estándar que permite la creación de procesos en paralelo en una computadora con múltiples núcleos o CPUs. Proporciona una interfaz de programación para crear y administrar procesos de manera fácil y eficiente, lo que permite acelerar la ejecución de programas que realizan tareas intensivas en cómputo.

2 - ¿Cómo asignar y obtener los nombres de los procesos?#

  • El nombre del proceso se puede obtener utilizando la función current_process() de la librería multiprocessing.

  • El nombre del proceso se puede asignar utilizando el argumento name de la función Process() de la librería multiprocessing.

import multiprocessing
import time

def foo():
    name = multiprocessing.current_process().name
    print ("Inicio del proceso llamado %s \n" %name)
    time.sleep(2)
    print ("Final del proceso llamado %s \n" %name)

if __name__ == '__main__':
    # Crear procesos
    process_with_default_name1 = multiprocessing.Process(target=foo)
    process_with_default_name2 = multiprocessing.Process(target=foo)
    process_with_name = multiprocessing.Process(name='MeNombraron',target=foo)

    # Ejecutar procesos
    process_with_name.start()
    process_with_default_name1.start()
    process_with_default_name2.start()

    # Esperar finalización de los procesos
    process_with_name.join()
    process_with_default_name1.join()
    process_with_default_name2.join()
Inicio del proceso llamado MeNombraron 

Inicio del proceso llamado Process-4 

Inicio del proceso llamado Process-5 

Final del proceso llamado MeNombraron 

Final del proceso llamado Process-4 
Final del proceso llamado Process-5