网志中国数据载入中... |
| Banner|栏目 |
网志中国数据载入中... |
| New BLog|日志 |
网志中国数据载入中... |
| New Reply|回复 |
|
| New message|留言 |
网志中国数据载入中... |
| User Login|登陆 |
网志中国数据载入中... |
| BLog Search|搜索 |
网志中国数据载入中... |
| BLog Info|信息 |
网志中国数据载入中... |
| My Links|收藏 |
|
|
|
网志中国数据载入中... |
| FPGA 三位表决器 |
| colinluan 发表于 2007-8-3 12:35:00 |
| 运行平台: MAX+Plus II 10.0
点击下载:
UploadFlies/2007-8/31421623934.rar |
| 阅读全文 | 回复 | 引用通告 |
| 多线程编程之四——线程的同步 |
| colinluan 发表于 2007-7-18 17:47:00 |
| 多线程编程之四——线程的同步作者:韩耀旭
下载源代码
八、线程的同步
虽然多线程能给我们带来好处,但是也有不少问题需要解决。例如,对于像磁盘驱动器这样独占性系统资源,由于线程可以执行进程的任何代码段,且线程的运行是由系统调度自动完成的,具有一定的不确定性,因此就有可能出现两个线程同时对磁盘驱动器进行操作,从而出现操作错误;又例如,对于银行系统的计算机来说,可能使用一个线程来更新其用户数据库,而用另外一个线程来读取数据库以响应储户的需要,极有可能读数据库的线程读取的是未完全更新的数据库,因为可能在读的时候只有一部分数据被更新过。 使隶属于同一进程的各线程协调一致地工作称为线程的同步。…… |
| 阅读全文 | 回复 | 引用通告 |
| 多线程编程之三——线程间通讯 |
| colinluan 发表于 2007-7-18 17:46:00 |
| 多线程编程之三——线程间通讯作者:韩耀旭
下载源代码
七、线程间通讯
一般而言,应用程序中的一个次要线程总是为主线程执行特定的任务,这样,主线程和次要线程间必定有一个信息传递的渠道,也就是主线程和次要线程间要进行通信。这种线程间的通信不但是难以避免的,而且在多线程编程中也是复杂和频繁的,下面将进行说明。
使用全局变量进行通信由于属于同一个进程的各个线程共享操作系统分配该进程的资源,故解决线程间通信最简单的一种方法是使用全局变量。对于标准类型的全局变量,我们建议使用volatile 修饰符,它告诉编译器无需对该变量作任何的优化,即无需将它放到一个寄存器中,并且该值可被外部改变。如果线程间所需传递的信息较复杂,我们可以定义一个结构,通过传递指向该结构的指针进行传递信息。
使用自定义消息我们可以在一个线程的执行函数中向另一个线程发送自定义的消息来达到通信的目的。…… |
| 阅读全文 | 回复 | 引用通告 |
| 多线程编程之二——MFC中的多线程开发 |
| colinluan 发表于 2007-7-18 17:45:00 |
| 多线程编程之二——MFC中的多线程开发作者:韩耀旭
下载源代码
五、MFC对多线程编程的支持
MFC中有两类线程,分别称之为工作者线程和用户界面线程。二者的主要区别在于工作者线程没有消息循环,而用户界面线程有自己的消息队列和消息循环。 工作者线程没有消息机制,通常用来执行后台计算和维护任务,如冗长的计算过程,打印机的后台打印等。用户界面线程一般用于处理独立于其他线程执行之外的用户输入,响应用户及系统所产生的事件和消息等。但对于Win32的API编程而言,这两种线程是没有区别的,它们都只需线程的启动地址即可启动线程来执行任务。 在MFC中,一般用全局函数AfxBeginThread()来创建并初始化一个线程的运行,该函数有两种重载形式,分别用于创建工作者线程和用户界面线程。两种重载函数原型和参数分别说明如下: …… |
| 阅读全文 | 回复 | 引用通告 |
| 多线程编程之一——问题提出 |
| colinluan 发表于 2007-7-18 17:44:00 |
| 多线程编程之一——问题提出作者:韩耀旭
下载源代码
一、问题的提出
编写一个耗时的单线程程序:
新建一个基于对话框的应用程序SingleThread,在主对话框IDD_SINGLETHREAD_DIALOG添加一个按钮,ID为IDC_SLEEP_SIX_SECOND,标题为“延时6秒”,添加按钮的响应函数,代码如下: void CSingleThreadDlg::OnSleepSixSecond()
{
Sleep(6000); //延时6秒
}
编译并运行应用程序,单击“延时6秒”按钮,你就会发现在这6秒期间程序就象“死机”一样,不在响应其它消息。为了更好地处理这种耗时的操作,我们有必要学习——多线程编程。
二、多线程概述
…… |
| 阅读全文 | 回复 | 引用通告 |
| windows消息大全 |
| colinluan 发表于 2007-7-13 9:09:00 |
| 消息,就是指Windows发出的一个通知,告诉应用程序某个事情发生了。例如,单击鼠标、改变窗口尺寸、按下键盘上的一个键都会使Windows
发送一个消息给应用程序。消息本身是作为一个记录传递给应用程序的,这个记录中包含了消息的类型以及其他信息。例如,对于单击鼠标所
…… |
| 阅读全文 | 回复 | 引用通告 |
| 常用芯片资料 |
| colinluan 发表于 2007-7-12 15:28:00 |
| 常用芯片资料下载:
http://www.k65.net/u.php
用户:colinluan
密码:12345 |
| 阅读全文 | 回复 | 引用通告 |
| 600种晶体三极管参数表 |
| colinluan 发表于 2007-7-10 19:13:00 |
| 600种晶体三极管参数表
点击下载:UploadFlies/2007-7/69271.39729293.zip |
| 阅读全文 | 回复 | 引用通告 |
| I2C总线软件包 |
| colinluan 发表于 2007-7-10 19:06:00 |
| I2C总线软件包下载:
点击下载:UploadFlies/2007-7/68832.78226463.rar |
| 阅读全文 | 回复 | 引用通告 |
首页 上一页 下一页 尾页 页次:1/6页 12篇日志/页 转到:
|
|