PDA

Ver la Versión Completa : "Asynchronous socket error 10061." Mis clientes se cuelgan


Boris
31-08-2007, 15:49:22
Buenas, tengo un problema con sockets en la aplicación que intento realizar.

Resulta que se da este error: "Asynchronous socket error 10061.".

Mi aplicación cliente hace peticiones periódicamente pero en algúna de ellas como que la petición es rechazada y salta el error, sin embargo el servidor continúa funcionando normalmente. He modificado la variable ErrorCode que viene por parámetro en el evento onError de mi socket cliente, asignándole el valor de 0 para que no salga el mensaje, efectivamente no vuelve a salir pero el problema está en que desde ese momento la aplicación cliente se queda como colgada porque no se puede cerrar y el cpu de mi equipo se dispara al tope, pues el porcentaje de uso de cpu de la aplicación cliente se incrementa demasiado; tanto cliente como servidor en cuanto a comunicación continúan trabajando normalmente pero el estado de mi cliente es anormal, entonces solo se puede cerrar finalizando el proceso desde el administrador de tareas de windows.

Agradezco mucho la ayuda que me puedan brindar.

poliburro
31-08-2007, 20:22:48
por que no usas un bloque try except end; y evaluas el valor de error, para cuando sea ese en específico no lo reportes

algo así


Try
....
Except
On MalditoError: Exception do
If error <> 1061 Then
ShowMessage('Error grave error: ' + error.message);
end;

jandok238
13-09-2007, 16:59:17
Hola.....extendiendo mas el tema, y aprocechando para preguntar.... segun lo escrito por poliburro ...

por que no usas un bloque try except end; y evaluas el valor de error, para cuando sea ese en específico no lo reportes



En otro lado, (no me acuerdo donde), lei que el ClientSocket maneja sus errores en su propio evento OnError por lo que no entra a la parte del except al momento de intentar el TRY - EXCEPT

Yo lo intente con el TRY - EXCEPT y no me manda ningun mensaje de error. lo que se puede hacer es manejar estos errores en el evento OnError del ClientSocket.

Haber si alguien confirma ésto, o me saca de mi error.....

salu2!!!!!!!!