为什么我看到多个“线程0x22c8退出代码259(0x103)”消息

我在我的Winforms应用程序中得到了这些消息的一大堆,即使我从来没有明确地做任何线程。 为什么发生这种情况? 我已经四处寻找一个解释,但很难说这样的调查。

我正在使用Visual Studios 2013,这是我关心的debugging输出:

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). 

来自MSDN文档:

备注

这个函数立即返回。 如果指定的线程没有终止并且function成功,则返回的状态是STILL_ACTIVE。 如果线程已终止并且函数成功,则返回的状态为以下值之一:ExitThread或TerminateThread函数中指定的退出值。 线程函数的返回值。 线程进程的退出值。 重要GetExitCodeThread函数仅在线程终止后返回应用程序定义的有效错误代码。 因此,应用程序不应该使用STILL_ACTIVE(259)作为错误代码。 如果线程返回STILL_ACTIVE(259)作为错误代码,则testing此值的应用程序可能会将其解释为意味着线程仍在运行,并在线程终止后继续testing线程的完成情况,应用程序进入无限循环。

所以基本上它仍然不时地检查当前的线程。

这似乎是一个错误:

http://connect.microsoft.com/VisualStudio/feedback/details/812144/vs2013-reports-incorrect-thread-exit-code