求高手解答MFC appwizard 和 win32 console application的区别 建立了一个win32 console application工程,通过控制卡提供的链接库函数读取控制卡的IO数据,测得读一组IO数据约120ms。当将程序移植到MFC工程中,建立了程序界面,测读取一组IO数据却需要500ms,求解答这是什么原因?有没有什么办法解决? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 用QueryPerformanceCounter()函数获取程序段开始和结束的时间,求差得到的。我也很疑惑时间差这么多 用QueryPerformanceCounter()函数获取程序段开始和结束的时间,求差得到的。我也很疑惑时间差这么多 【补充】在MFC中程序是多线程的,读IO的操作是一个单独的线程,读IO中用到了Sleep函数,是不是和线程切换有关? 为啥要Sleep呢?你console程序里怎么做的呢?直接移植过来修改一下应该就可以使用了吧 我就是直接移植过来的,因为IO刷新速度不是很快,所以用了sleep延时,延时部分在console里也有。我试过去掉sleep函数,时间还是500ms 界面更新是一个线程,读IO是一个线程,两者肯定有影响,我也想过这个问题,但怎么让程序执行完读IO再切换到界面刷新? 按理说应该差不多才对,看看CPU占用率如何;另外:QueryPerformanceCounter()效率太低,尤其单核CPU的话更是如此,建议用CPU时间戳。 你不会是把读IO的线程放在和界面一个线程里吧?创建单独的线程负责io数据读取试试 由于是循环读取IO,当其中一个跳变后才读取下一个,CPU占用很高,但加入sleep函数后,CPU占用就大大降低了。请问CPU时间戳怎么用? 模拟程序点击的问题:调用的程序只有一个panel CListCtrl 用 LVS_EX_CHECKBOXES 后坐标有偏移,怎么校正 求助MFC问题 GB2312转unicode GetDlgItem(hWnd,1003)问题 用MoveWindow时候出现的奇怪的问题 MFC做的一个控件,经过数字签名,下载时没什么问题。在页面中调用其方法,提示控件不安全,请问怎么解决? 那位大哥能够我讲讲什么将隐藏的API么? 怎么调出连接数据源对话框 关于鼠标关闭窗口 使用MFC的AfxBeginThread()创建线程没有实例怎么解决? Opencv 中的cvCreatSeq这样用对吗?
你console程序里怎么做的呢?直接移植过来修改一下应该就可以使用了吧
另外:QueryPerformanceCounter()效率太低,尤其单核CPU的话更是如此,建议用CPU时间戳。
创建单独的线程负责io数据读取试试