从PCI上读取数据 线程和定时器效率
从PCI上读取数据 线程和定时器效率
线程:
mythread=AfxBeginThread(StartContinuous,(LPVOID)1,THREAD_PRIORITY_NORMAL,0,CREATE_SUSPENDED);
mythread->ResumeThread();
UINT StartContinuous(LPVOID pParam)
{ HWND hWnd=(HWND) pParam;
int len=0;
FILE *fp;
i=0;
while(threadenable)
{
len = CPCI6312_ReadData(buf);
if (len>0)
{
reccnt += len;
fwrite(buf,1,len,fp);
}
}
len = CPCI6312_ReadLastData(buf);
if (len>0)
{
reccnt += len;
fwrite(buf,1,len,fp);
}
fflush(fp);
fclose(fp);
AfxMessageBox("end",MB_OK,NULL);
return 0;
}
计数器方式:
void CDemo2Dlg::OnTimer(UINT nIDEvent)
{
// TODO: Add your message handler code here and/or call default
if(nIDEvent==1)//更新记录数据
{
runsec++;
str.Format("record:%d (%d)",reccnt,runsec);
m_list.AddString(str);
}
if (nIDEvent==2)//采集数据
{
len = CPCI6312_ReadData(buf);
if (len>0)
{
reccnt += len;
fwrite(buf,1,len,fp);
}
}
CDialog::OnTimer(nIDEvent);
}
同样的数据量,线程方式居然占用CPU 80% 以上,而计数器不到30%。
从PCI上读取数据 线程和定时器效率相关推荐
- ffplay分析(从启动到读取数据线程插入到字幕、音频、视频解码前的队列操作)
<ffplay的数据结构分析> <ffplay分析(视频解码线程的操作)> <ffplay分析(音频解码线程的操作)> <ffplay 分析(音频从Frame ...
- 从服务器获取文件错误,在尝试获取许可证时出现无法从许可证服器上读取数据的错误信息...
Problem [Simplified Chinese] 在尝试获取许可证时遇到FLEXlm -16 "无法从许可证服务器上读取数据"的错误信息. Symptom 完整的错误信息如 ...
- 许可证服务器读取文件时警告错误,在尝试获取许可证时出现无法从许可证服器上读取数据的错误信息...
Problem [Simplified Chinese] 在尝试获取许可证时遇到FLEXlm -16 "无法从许可证服务器上读取数据"的错误信息. Symptom 完整的错误信息如 ...
- 汇编 --- 从磁盘(扇区2到18)上读取数据到内存中
下面代码读取柱面:0,磁头:0,扇区从2到18的数据到内存 0x8200~0xa3ff处 需要明白以下几点: 给定柱面,磁头,一个扇形区域是512字节,对应的物理可以理解为512个灯泡组(一个灯泡组有 ...
- 当小内存遇上大量数据,你该怎么解决这个问题?
作者丨Itamar Turner-Trauring 译者丨夏夜 策划丨万佳 当你写了一个处理数据的软件,它可能在小样本文件上运行地很好,但一旦加载大量真实数据后,这个软件就会崩溃. 问题在于你没有足够 ...
- java excel导入前台_java上传excel表格并读取数据返回到前台
如果你对里面的代码不熟悉不知道的话,建议先浏览一遍代码再拿去用, 这里我介绍一下这个过程的思路: 1.定义变量那些就不说了 , 2.首先是上传文件并保存的代码 3.根据excel表的路径来读取文件,之 ...
- ITK:对多个线程上的数据进行操作以利用多核处理器
ITK:对多个线程上的数据进行操作以利用多核处理器 ITK:对多个线程上的数据进行操作以利用多核处理器 内容提要 结果 C++实现代码 ITK:对多个线程上的数据进行操作以利用多核处理器 内容提要 内 ...
- Hibernate上传数据到数据库,从数据库读取数据到本地模板代码
1.Hibernate上传数据到数据库: 1 //创建一个session对象 2 Session session1=HibernateTools.getSession(); 3 //Fenciresu ...
- 如何创建最简单的 ABAP 数据库表,以及编码从数据库表中读取数据 (上) 试读版
ABAP 标准培训教程 BC400 学习笔记之一:ABAP 服务器的架构和一个典型的 ABAP 程序结构介绍 ABAP 标准培训教程 BC400 学习笔记之二:Cross-client 和 Clien ...
- python从csv中读取数据打印到屏幕上-从Python中的CSV文件读取数据
我正在从包含以下数据的CSV文件(xyz.CSV)读取数据:col1,col2,col3,col4 name1,empId1,241682-27638-USD-CIGGNT ,1 name2,empI ...
最新文章
- 统计学派的18种经典「数据分析方法」
- mysql binlog 二进制_二进制日志-mysqlbinlog工具的使用
- Perhaps you are running on a JRE rather than a JDK?
- anaconda: command not found
- css 背景图 左右空白,缩小窗口时CSS背景图出现右侧空白BUG的解决方法
- 【css】css实现斜线表头
- 利用R语言进行具有周期性的时间序列分析
- android官方转圈圈,android 弹出之后,一直转圈圈??
- EMW3162 AT固件的使用【2】
- Anaconda奇怪问题记录:WARNING conda.exceptions:print_unexpected_error_report(1251): KeyError(‘pkgs_dirs‘)
- 用C语言程序实现十进制转换为二进制
- 2007年开关稳压电源设计报告!!!
- 定向光和天空盒(个人笔记)
- windows下安装yii2
- 河北工业大学 离散数学学习资料分享(课件,教材,习题,总结)
- linux 关闭sendmail
- [opencv完整项目详解] 传统图像算法解决路标的检测和识别(改进升级版)
- ArcEngine线分割面的实现方法
- 易基因:禾本科植物群落的病毒组丰度/组成与人为管理/植物多样性变化的相关性 | 宏病毒组
- 部署DM MPP主备集群
热门文章
- 使用yum安装Apache+PHP+MySQL
- Ancient Knight(打造Windows Mobile平台最专业的游戏修改器)
- 24岁女孩与30岁男人的精彩对白
- Ant运行build.xml执行服务器scp,异常解决jsch.jar
- 2018JavaScript状态调查:5个重要的思考( import takeaways) (摘译)
- wenbao与最短路(Floyd)
- 软件测试第四组第一周作业第一天
- Selenium-鼠标操作
- [处理数据的心得][1]--相关矩阵的可视化
- 基于VisualStudio11开发Windows8的Metro sample讲解(1)MessageBox