社区
进程/线程/DLL
帖子详情
求救,关于多线程处理串口处理数据问题
fang_jb
2000-08-11 11:28:00
我用了一个ms的communication控件,用的是多线程处理方式,在线程中要用控件
的某些函数来读取数据,所以需要一个控件的指针。但是当我把控件的指针声明为
全局时,总是出现错误,而在使用控件句柄,把句柄传递给线程时,好像不能保证在
整个处理过程中句柄的有效性,于是总出现非法操作,程序极其不稳定。想请问各位
专家,做此类的程序用什么比较好,多线程处理时,该注意什么问题,如何解决句柄
的问题。
...全文
156
4
打赏
收藏
求救,关于多线程处理串口处理数据问题
我用了一个ms的communication控件,用的是多线程处理方式,在线程中要用控件 的某些函数来读取数据,所以需要一个控件的指针。但是当我把控件的指针声明为 全局时,总是出现错误,而在使用控件句柄,把句柄传递给线程时,好像不能保证在 整个处理过程中句柄的有效性,于是总出现非法操作,程序极其不稳定。想请问各位 专家,做此类的程序用什么比较好,多线程处理时,该注意什么问题,如何解决句柄 的问题。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
4 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
fang_jb
2000-08-13
打赏
举报
回复
各位专家,快帮帮忙呀!
zzh
2000-08-13
打赏
举报
回复
这么困难的问题,只有15分,难怪没什么人回答。
用多线程来读取串口数据时,如果线程是自己申请的,可以把控件的指针传递进去。你可以用传送地址方式来传递控件指针。如下所示:
UINT ReadCommProc(LPVOID pParam)
{
}
你声明一个控件的实例,然后再把该实例的地址传递进去就可以了。
如果对于读串口数据要求比较即时的话,当然使用多线程比较好,如果不是要求及时,可以用响应WM_TIMER消息来处理。每隔多少时间读一次串口数据。在多线程编和中,最主要要注意的问题是一定要记得把线程中的资源释放掉。同时,在程序退出前,一定要记得把线程关闭。如果有什么问题,可以用Bounder Checker来检查错误。这是一个好东东。
fang_jb
2000-08-13
打赏
举报
回复
那么请问,那个 pParam 就是所要传的地址吗?是不是在开始线程的时候把它传进去,
指针在整个程序运行中的地址不会变化吗?传进去之后可以直接使用它来调用控件的函数吗?
比如用 . 或是 -> 操作符?
HHHH
2000-08-13
打赏
举报
回复
各位专家,快帮帮忙呀!
编程资料 -C#
多线程
编程资料 -
多线程
C#
多线程
编程实例实战
作者: 刘弹 www.ASPCool.com 时间:2003-5-17 上午 10:24:05 阅读次数:10996
单个写入程序/多个阅读程序在.Net 类库中其实已经提供了实现,即
System.Threading.ReaderWriterLock 类。本文通过对常见的单个写入/多个阅读程序的分析来探索c#
的
多线程
编程。
问题
的提出
所谓单个写入程序/多个阅读程序的线程同步问
Android 基础知识
IntentService是Service的子类,默认开启了一个工作线程HandlerThread,使用这个工作线程逐一
处理
所有启动请求,在任务执行完毕后会自动停止服务,只要实现一个方法onHandleIntent,该方法会接受每个启动
求救
的intent,能够执行后台工作和耗时操作。如果要启动的activity已经存在于它想要归属的栈中,那么不会创建新实例,将栈中位于该activity上的所有的activity出栈,同事该activity的onnewintent方法会被调用。
WEB开发文档2 总结
转自:http://blog.donews.com/lvjiyong/archive/2006/06/29/931071.aspx怎样将后台生成的在内存中的图象显示到客户端Microsoft IE WebControls下载地址如何在DATAGRID中使用JAVASCRIPT脚本控制DataGrid中连接到下一页显示
数据
下载中文名文件时保存文件名乱码
问题
关于用ASP.net绘图的
问题
,请大虾指教那
C# 禁用进程内的按键 wpf
如何在制定进程内禁用指定按键?
如我想在CS.exe里禁用Ctrl + Space 或者禁止打开输入法要怎么做呢?
这三种方法,都是.net可以捕获的异常才会生效。如果是非托管组件中发生了异常,它们是捕获不到的。
奔溃时的错误信息是什么?直接退出,还是被操作系统关闭?或者是占用资源太多导致系统失去响应?这些信息要提供出来才能进一步分析。1.如果是直接退出,那么有可能是在主线程以外的线程中发生异常没有
处理
引起的。在所有的线程的第一个函数入口加上try catch,可以
SUN Solaris
问题
小结
SUN服务器可能遇到的
问题
总结(一) 1) Q:现在遇到这样一个
问题
,telnet一台SUN机时报下面的错误: No utmpx entry. You must exec "login" from the lowest level "shell". 我做了下面的
处理
后: cd /var/adm mv utmpx utmpxbak touch utmpx telnet 恢复了正常,可在该机...
进程/线程/DLL
15,471
社区成员
49,182
社区内容
发帖
与我相关
我的任务
进程/线程/DLL
VC/MFC 进程/线程/DLL
复制链接
扫一扫
分享
社区描述
VC/MFC 进程/线程/DLL
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章