使用消息来处理多线程程序中的一些问题
来源:互联网 发布:淘宝远程电脑出租 编辑:程序博客网 时间:2024/06/02 06:39
今年上半年做项目时遇到了一个问题,就是系统在运行的过程中,点击程序到显示画面,另外一个线程接收到信息需要将画面的局部进行更新。考虑到是跨线程的操作,直接处理的话就会出现错误。因此使用消息的方式来处理,问题得到了解决。现在将示例代码贴出来演示下:
//自定义消息
public const int USER = 0x500;
public const int MYMESSAGE = USER + 1;
///重写窗体的消息处理函数DefWndProc,从中加入自己定义消息 MYMESSAGE 的检测的处理入口
protected override void DefWndProc(ref Message m)
{
switch (m.Msg)
{
//接收自定义消息MYMESSAGE
case MYMESSAGE:
{
lb1.Enabled = true;
lb1.Visible = true;
}
break;
default:
base.DefWndProc(ref m);
break;
}
}
//供其它线程调用的方法
public void CallProcess()
{
//other process
//抛出消息进行跨线程的处理
Win32API.PostMessage(this.Handle, MYMESSAGE, "", "");
}
- 使用消息来处理多线程程序中的一些问题
- 批处理程序中的“多线程”处理
- x264多线程中的一些问题
- Android 数据库综述(二) 程序计算器与信号量来处理多线程并发问题
- Java程序中的多线程问题
- 使用.net4.0中的并行计算来处PI值,及多线程处理比较
- 自然语言处理中的一些问题
- 在多线程程序中指定线程来处理信号
- 使用数组 处理一些问题
- 多线程消息处理队列
- 使用Androiddp推送消息的一些问题
- [原创]MFC中的多线程处理问题总结
- 使用NotificationCompat兼容包来处理消息通知
- Boost.Aiso教程 5-同步多线程程序中的处理程序
- 如何解决多线程程序中的死锁问题
- 如何解决多线程程序中的死锁问题
- 使用文件来保存程序中的数据
- 使用BigInteger来处理权限问题,
- 第二章 2 HTML 5 音频
- J2EE开发常用开源项目名词解释
- com调用代码示例---续3
- 信号量(semaphore)入门
- 第二章 3 HTML 5 Canvas
- 使用消息来处理多线程程序中的一些问题
- Ext.Toolbar和Ext.Menu的使用
- android 通过字符串来获取R下面资源的ID 值
- topcoder srm 519 div 1
- html5 绘制图形
- 提高 web 应用性能之 JavaScript 性能调优
- 【分享】用有的程序架构教程-《应用程序架构本质》
- S3C2440中SDRAM \NOR FLASH\ NAND FLASH地址分配问题
- 项目经理问:为什么总是只有我在加班 – 挂包袱现象