引用论坛中一个帖子的解释和解决方案:
MFC是在类层次上的线程安全而不是在对象层次上的线程安全.
如果把一个CWnd * P传递到另外一个线程,在这个线程中CWnd的有些成员
函数将不能使用,因为在MFC内部维护一个HWND和MFC对象间的映射,但这个映射
不能跨线程,所以在一个线程中把一个CWnd * P传递到另外一个线程,另外一个
线程只有CWnd * 而没有相应的HWND的这个映射,所以出现ASSERT错误.
解决方案:
GetDlgItem(IDC_STATIC_MSG)-> SetWindowText(pThread-> m_msg);