Pregunta

Tengo una aplicación de consola .net C # (no un servicio). básicamente se conecta a un servicio web, obtiene algunos archivos xml, copia esos archivos en una ubicación en un disco, valida el xml, lo procesa y envía estos objetos a otro servicio web.

Sin embargo, cuando existe el método principal (y la ventana de la consola se cierra) todavía puedo ver el proceso en el administrador de tareas.

Intenté rodear todo en el método principal con un intento, para detectar una excepción de aplicación, y todavía no obtuve nada sobre por qué la aplicación se bloquea a pesar de que, de lo contrario, todo funciona sin problemas ...

¿Alguien tiene idea de dónde comenzar a verificar la parte defectuosa?

¿Fue útil?

Solución

Observe el uso de hilos y las llamadas asíncronas.

Otros consejos

Si la ventana de la consola se ha cerrado, parece muy extraño que el proceso todavía se esté ejecutando. ¿Se puede adjuntar a él en el depurador de Visual Studio? (Obviamente, una compilación de depuración).

¿Estás seguro de que no se está ejecutando una ejecución anterior?

Si está depurando la aplicación, he visto la situación en la que Visual Studio crea un exe de host llamado similar a su aplicación con .vshost.exe al final. Utiliza ese control de su aplicación para una mejor experiencia de depuración. Este host exe permanece después de que haya terminado de depurar su programa para que esté listo y listo para que pueda comenzar una nueva sesión de depuración rápidamente.

¿Estás seguro de que no es este exe el que está dando vueltas?

Si ejecuta su aplicación sin depurar, ¿aún se queda?

Es casi seguro que tiene un hilo sin terminar en su aplicación. Como dijo Jon, conéctese con el depurador y vea qué hilos están vivos.

Como todas las otras respuestas han sugerido que probablemente tengas un hilo persistente pero no necesariamente uno que hayas creado explícitamente, es posible que debas llamar a Dispose o algo similar en uno o más de tus objetos

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top