是你模拟的不对,线程是windows调试的最小单位,他们是单独被调度的,之所以出现这种现象可能是AfxMessageBox的内部实现机理倒置的(具体的没研究过)
你把线程函数改成下面两种任一就可以了UINT thread1(LPVOID p)
{
for(int i=0;i<100;i++)
MessageBeep(-1);
return 0;
}UINT thread1(LPVOID p)
{
::MessageBox(NULL,"begin","ok",MB_OK);
return 0;
}
你把线程函数改成下面两种任一就可以了UINT thread1(LPVOID p)
{
for(int i=0;i<100;i++)
MessageBeep(-1);
return 0;
}UINT thread1(LPVOID p)
{
::MessageBox(NULL,"begin","ok",MB_OK);
return 0;
}
解决方案 »
- 奇怪的数据丢帧
- TreeView和XML的问题
- vc++下能否覆盖所有异常处理的方法
- 这段代码是什么意思?
- 如何调用DLL中的资源?
- CRichEditCtrl, CRichEditDoc, CRichEditView三者是何关系?
- 升星星再散分---顺便提问
- CSocket的OnReceive()重载可以接收UDP数据么?还有使用CSocket如何进行UDP传输?
- GDI+画的图保存为EMF图的问题
- WM_PAINT 中的BeginPaint
- 很爽的XP风格Menu\ToolBar\Combo\Button程序(可惜不是我写的 :) ),有要的吗?
- 多线程的线程函数里面,该怎样调用CSocket的派生类对象?
这就比较麻烦了,如果你需要有界面且支持消息循环为何不起一个界面线程?也用不了
几句就可搞定,何乐而不为?
是可以,如果你现在在上海,要去北京,让你先到深圳再转机,你干吗?