解决方案 »
- MFC实现CTree控件动态添加成员
- 非模态Dialog在Create后如何转化化为模态的?
- MDI多文档结构切换view时闪烁,怎么解决?
- 大家的IOCP的 accept 都是 AcceptEx 么?
- ATL做控件中,如何让它产生一个编辑框啊?谢谢!请给段代码吧
- 请问caj和hdf文件用什么样的软件来打开,在什么地方下载?
- 如何获得Excel工作表的所有Sheet的名称?一旦解决,立即结贴!
- 怎样在多文档的子文档中显示BMP图像??????
- GDI+图片旋转后的锯齿如何消除
- 在vb中開發的activex控件﹐怎樣在网頁上用呢﹖﹖我遇到麻煩
- 手动进行线程切换的问题
- 浏览器升级后,chtmlview做的程序经常崩溃
具体怎么理解呢?
那为什么多核时就可以得到处理呢?即:在多核环境下,一会运行 Line 2, 一会运行Line 1。
那为什么单核时的结果不是这样?
表示怀疑。即使多核的情况下,一个线程也不可能一个处理未处理完毕就启动另一个处理
窗口线程运行基于消息循环,而消息循环中的DispatchMessage调用窗口过程,窗口过程执行完毕消息才能抽取下一个窗口消息,一个窗口消息未返回,怎么可能能得到WM_TIMER消息?感觉lz观察有误
while(...)
{
getmessage(...)
...
}
或者说调用了一些COM组件的方法?其实这些方法是在内部跑消息循环(那种单线程套间的COM组件就爱干这种事情)
,然后就调度了计时器消息。你在Line1的时候输出一下日志,把调用栈贴出来看看呢?
如果在执行Line2一半的时候执行了Line1,一会应该还会再回到Line2,也就是说如果确实是同一个线程的话,Line2那个函数应该还在调用栈里面。