2011-03-26 87 views
2

我在win32程序中发现了一个问题。当我退出程序,我看到了许多日志中输出象下面这样:关于线程退出


线程“的Win32线程”(0xbec)已退出,代码为0(为0x0)。

线程'Win32 Thread'(0x4c0)已退出,代码为0(0x0)。

线程'Win32 Thread'(0x97c)已退出,代码为0(0x0)。

线程“Win32线程”(0xe10)已退出代码0(0x0)。

线程'Win32 Thread'(0x5f0)已退出代码0(0x0)。

线程'Win32 Thread'(0xfc0)退出代码0(0x0)。

线程'Win32 Thread'(0xdc0)已退出,代码为0(0x0)。


我不知道这些都是正常的现象。有人可以告诉我发生了什么事吗?

回答

3

假设你已经开始了6个线程(除了默认的线程),这是非常正常的。如果您已经使用了线程池之类的东西,那么您可能已经隐式创建了这些内容,可能甚至没有意识到它。底线:除非你是相当确定你的代码是单线程的,这可能是完全正常的。

2

当你退出程序时,所有线程都应该被拆除。你为什么认为这是一个问题?

+0

我的程序运行并退出时没有任何问题。我只是对输出日志感兴趣。所以我知道他们是正常的行为,对吧?感谢您的回答! – snail 2011-03-26 18:56:06

+0

对。无论程序是否正常退出,所有线程都被拆除:即使通过任务管理器终止了它,也应该看到类似的输出(尽管任务管理器可能使用不同的退出代码)。 – telewin 2011-03-26 19:02:28