Ver Mensaje Individual
  #5 (permalink)  
Antiguo 07/08/2010, 21:44
theteam
 
Fecha de Ingreso: febrero-2010
Mensajes: 10
Antigüedad: 14 años, 9 meses
Puntos: 0
Respuesta: problema con hilos (malditos hilos en python xD)

eso quedo mucho mas prolijo, gracias :)

pero si lo ejecutas tira el error que comentaba en el principio, para solucionarlo quedaria asi:
Código Python:
Ver original
  1. import threading
  2. from time import sleep
  3.  
  4. stop = True #Variable de control
  5.  
  6. def run(): #Esto es lo que hace el hilo
  7.     global stop
  8.     while not stop:
  9.         print "Hilo en ejecucion por 2s"
  10.         sleep(2)
  11.  
  12. def execThread(thread):
  13.     global stop
  14.     if thread.isAlive():
  15.         print "Hilo Ejecutandose"
  16.     else:
  17.         stop = False
  18.         print "Hilo antes o despues de ejecutarse"
  19.         t = threading.Thread(target=run) #(ESTO ES LO QUE FALTO AGREGAR)
  20.         thread.start()
  21.        
  22. t = threading.Thread(target=run) #Aqui creas un hilo
  23. execThread(t)
  24. execThread(t)
  25. stop = True
  26. sleep(5)
  27. execThread(t)

gracias por tomarte el trabajo de codificar para un desconocido!
ahora la unica duda que me queda es:
cuando un hilo termina de ejecutarse, queda algun residuo de el en memoria?? porque si es asi, y estamos en la necesidad de correr muchos hilos (porque no podemos iniciar y cortar, iniciar y cortar uno mismo) la cosa se pone mas ineficiente. o estoy tirando cualquier pavada?