← Volver

Cómo lanzar un hilo («thread»)

Python incluye el módulo estándar threading para trabajar con hilos. Para ello se crea una instancia de la clase Thread, indicando una función que será el punto de entrada del nuevo hilo, y luego se llama al método start() para iniciarlo.

from threading import Thread

def worker():
"""
Esta función se ejecuta en otro hilo.
"""
for i in range(5):
print("Hola, mundo!")

t = Thread(target=worker)
t.start()

Nótese que start() no espera a que finalice la ejecución del hilo. Para ello, utilícese el método join().

t = Thread(target=worker)
t.start()
t.join()
print("El hilo ha finalizado.")

Se pueden pasar los argumentos del punto de entrada vía el parámetro args.

# (...)
def worker(msg):
"""
Esta función se ejecuta en otro hilo.
"""
for i in range(5):
print(msg)

t = Thread(target=worker, args=("Hola mundo!",))
# (...)

O bien argumentos por nombre vía kwargs.

# (...)
def worker(msg=""):
"""
Esta función se ejecuta en otro hilo.
"""
for i in range(5):
print(msg)

t = Thread(target=worker, kwargs={"msg": "Hola mundo!"})
# (...)

threading hilos


👨‍💻 ¡Ya lanzamos el curso oficial de Recursos Python en Udemy! Un curso moderno para aprender Python desde cero con programación orientada a objetos, SQL y tkinter en 2024.

🐍 También te puede interesar:


💡 Ofrecemos servicios profesionales de desarrollo y capacitación en Python a personas y empresas. Consultanos por tu proyecto.