""" Multiprocessing """ from multiprocessing import Process import os, time def nros_cuadrados(): """ función dummy para ser ejecutada por Process 'target' """ for i in range(100): i * i time.sleep(0.1) # lista que guarda todos los procesos procesos = [] # un buen número de procesos es la cantidad de CPUs de la maquina num_procesos = os.cpu_count() # creación de los procesos for i in range(num_procesos): # Process toma 2 argumentos # función target p = Process(target=nros_cuadrados) # , args=(tupla_args)) procesos.append(p) # Iniciar procesos for p in procesos: p.start() # join (bloquear el hilo principal hasta terminar ejecución de procesos) for p in procesos: p.join() print("FIN main") """ Ejemplo de la salida de Htop 20551 root 20 0 8732 S 0.0 0.1 0:00.00 1 python3 multi.py 20552 root 20 0 8732 S 0.0 0.1 0:00.00 1 python3 multi.py 20553 root 20 0 8732 S 0.0 0.1 0:00.00 1 python3 multi.py 20554 root 20 0 8732 S 0.0 0.1 0:00.00 1 python3 multi.py 20555 root 20 0 8732 S 0.0 0.1 0:00.00 1 python3 multi.py 20556 root 20 0 8732 S 0.0 0.1 0:00.00 1 python3 multi.py 20557 root 20 0 8736 S 0.0 0.1 0:00.00 1 python3 multi.py 20558 root 20 0 8736 S 0.0 0.1 0:00.00 1 python3 multi.py """