Entiendo perfectamente que no quieras publicar tu código, es totalmente logico y no hay nada de malo con ello
![sonriente](http://static.forosdelweb.com/fdwtheme/images/smilies/smile.png)
. Por eso, antes de que me pases el codigo intentemos ver que anda mal. Intenta esto:
Código Python:
Ver originalclass Soket(threading.Thread):
def __init__(self, Incremento, IncNums, Total, ComprobarIP, gauge, Listado, COMPPUERTOS):
threading.Thread.__init__(self)
self.INCREMENTO = Incremento
self.INCNUMS = IncNums
self.TOTAL = Total
self.COMPROBARIP = ComprobarIP
self.BarraProgreso = gauge
self.Listado = Listado
self.PUERTOS = COMPPUERTOS
def run(self):
if self.INCREMENTO < self.TOTAL:
try:
self.puertito = int(self.PUERTOS[self.INCREMENTO])
Conexion = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
Conexion.connect((self.COMPROBARIP, self.puertito))
#print "Puerto abierto"
self.INCREMENTO += 1
self.INCNUMS += 1
Conexion.close()
self.Listado.InsertStringItem(0, "hola")
self.Listado.SetStringItem(0, 1, "hola")
self.Listado.SetStringItem(0, 2, "hola")
self.Listado.SetStringItem(0, 3, "hola")
self.run()
except:
self.puertito = int(self.PUERTOS[self.INCREMENTO])
#print "Puerto cerrado"
self.INCREMENTO += 1
self.INCNUMS += 1
self.Listado.InsertStringItem(0, "hola")
self.Listado.SetStringItem(0, 1, "hola")
self.Listado.SetStringItem(0, 2, "hola")
self.Listado.SetStringItem(0, 3, "hola")
self.run()
Y la otra parte como lo mostraste en tu primer post. En __init__ estabas llamado a la función lalas(), error! Creo que definitivamente era eso, ya que la función start() se encarga de mover a run() a un nuevo hilo y ejecutarla ahi.
Fijate si funciona ahora y me dices.