c# - ¿Por qué estoy viendo varios mensajes "The thread 0x22c8 ha salido con el código 259(0x103)."
multithreading visual-studio (1)
Recibo una gran cantidad de estos mensajes en mi aplicación Winforms, aunque nunca hice ningún thread explícitamente. ¿Por qué está pasando esto? He buscado una explicación pero es difícil redactar una pregunta como esta.
Estoy usando Visual Studios 2013 y esta es la salida de depuración que me preocupa:
The thread 0x23a4 has exited with code 259 (0x103).
The thread 0x2884 has exited with code 259 (0x103).
The thread 0x27ec has exited with code 259 (0x103).
The thread 0x1978 has exited with code 259 (0x103).
The thread 0x1534 has exited with code 259 (0x103).
The thread 0x1ad8 has exited with code 259 (0x103).
The thread 0x2938 has exited with code 259 (0x103).
The thread 0x22c8 has exited with code 259 (0x103).
De la documentación de MSDN:
Observaciones
Esta función regresa inmediatamente. Si el hilo especificado no ha terminado y la función tiene éxito, el estado devuelto es STILL_ACTIVE. Si el hilo ha terminado y la función tiene éxito, el estado devuelto es uno de los siguientes valores: El valor de salida especificado en la función ExitThread o TerminateThread. El valor de retorno de la función de hilo. El valor de salida del proceso del hilo. Importante La función GetExitCodeThread devuelve un código de error válido definido por la aplicación solo después de que termina el hilo. Por lo tanto, una aplicación no debe usar STILL_ACTIVE (259) como un código de error. Si un hilo devuelve STILL_ACTIVE (259) como un código de error, las aplicaciones que prueban este valor podrían interpretar que significa que el hilo aún se está ejecutando y continuar probando la finalización del hilo una vez que el hilo ha terminado, lo que podría poner el aplicación en un bucle infinito.
Así que, básicamente, todavía está comprobando el hilo actual de vez en cuando.
Parece ser un error: