Antes que nada, te quiero dar la bienvenida a los foros, e indicarte que todos las inquietudes de los foristas, tienen la misma prioridad, por lo que sugerimos no nombrar los hilos como "Urgente".
Cita:
Empezado por Vauli
...al conectarse los clientes los agrego a una variable (Clients) del tipo TThreadList...
|
El TIdTCPServer internamente maneja una lista similar con los clientes conectados, pudes acceder a ella mediante la propiedad
Threads.
Cita:
Empezado por Vauli
...El problema viene cuando desde un procedimiento cualquiera (no tiene que ver con los procedimientos del componente) trato de enviar datos a un cliente que elijo desde una lista que contiene la misma informacion que la variable Clients, al intentar hacer un
--->> With Clients.locklist Do
Try
...
Finally
Clients.unlocklist;
End;
se queda "colgado" sin mensajes de error justo donde señala la flecha.
Alguien sabe como se puede solucionar esto?...
|
Seguramente el problema reside de que algún otro procedimiento ya haya bloqueado esta thread-sesitive critical section, y no la haya liberado aún. De ser así, tu procedimiento quedará bloqueado por tiempo indefinido hasta que el otro hilo cierre el bloqueo. Esa es la finalidad de las TThreadlist´s!
Saludos!