- 博客(9)
- 资源 (1)
- 收藏
- 关注
原创 多线程编程之四——线程的同步
八、线程的同步 虽然多线程能给我们带来好处,但是也有不少问题需要解决。例如,对于像磁盘驱动器这样独占性系统资源,由于线程可以执行进程的任何代码段,且线程的运 行是由系统调度自动完成的,具有一定的不确定性,因此就有可能出现两个线程同时对磁盘驱动器进行操作,从而出现操作错误;又例如,对于银行系统的计算机来 说,可能使用一个线程来更新其用户数据库,而用另外一个线程来读取数据库以响应储户的需要,极
2007-10-25 14:58:00 444
原创 多线程编程之三——线程间通讯
七、线程间通讯 一般而言,应用程序中的一个次要线程总是为主线程执行特定的任务,这样,主线程和次要线程间必定有一个信息传递的渠道,也就是主线程和次要线程间要进行通信。这种线程间的通信不但是难以避免的,而且在多线程编程中也是复杂和频繁的,下面将进行说明。 使用全局变量进行通信 由于属于同一个进程的各个线程共享操作系统分配该进程的资源,故解决线程间通信最简单的一种方法
2007-10-25 14:46:00 409
原创 多线程编程之一——问题提出
一、问题的提出编写一个耗时的单线程程序: 新建一个基于对话框的应用程序SingleThread,在主对话框IDD_SINGLETHREAD_DIALOG添加一个按钮,ID为IDC_SLEEP_SIX_SECOND,标题为“延时6秒”,添加按钮的响应函数,代码如下: void CSingleThreadDlg::OnSleepSixSecond() { Sleep(6000); /
2007-10-25 13:47:00 438
原创 VC中基于 Windows 的精确定时
在工业生产控制系统中,有许多需要定时完成的操作,如定时显示当前时间,定时刷新屏幕上的进度条,上位 机定时向下位机发送命令和传送数据等。特别是在对控制性能要求较高的实时控制系统和数据采集系统中,就更需要精确定时操作。 众所周知,Windows 是基于消息机制的系统,任何事件的执行都是通过发送和接收消息来完成的。
2007-10-25 10:50:00 505 1
原创 delphi中动态链接库dll的使用(转载)
动态链接库是一个能够被应用程序和其它的DLL调用的过程和函数的集合体,它里面包含的是公共代码或资源。由于DLL代码使用了内存共享技术,在某些地方 windows也给了DLL一些更高的权限,因而DLL中可以实现一些一般程序所不能实现的功能,如实现windows的HOOK、ISAPI等。同时, DLL还为不同语言间代码共享提供了一条方便的途径。因而DLL在编程时应用较为广泛,本文将介绍如何在 Delp
2007-09-12 14:01:00 453
原创 在Delphi中如何输出后台调试信息?
有些时候,我们需要输出调试信息,但又不在界面上,也不希望弹出窗口中断执行,这时,只要用OutputDebugString就可以了,然后在View|Debug Window|Event Log查看结果即可。例子:var S : string;for I:= 1 to 10000 dobegin .... OutputDebugString(PChar(S));end;我们知道,Window系统中
2007-09-10 15:56:00 3476
转载 断点_delphi
12.4.3 断点的使用12.4.3.1 设置断点 设置断点首先在Code Editor中选定你想设置断点的代码行,而后进行如下的任一种操作: ● 单击选定代码行左边的空白 ● 按F5 ● 选择Code Editor加速菜单的Toggle BreakPoint项 ● 选择Run|Add Breadpoint打开断点编辑对话框(Edit BreakPoint D
2007-08-24 11:40:00 1063
转载 delphi调用c动态库实践
一、概述Delphi是Borland公司研制的高效的可视化开发工具,它既可用于开发系统软件,也适合于应用软件的开发。随着韩国网络游戏《传奇》的红火,其开发工具delphi也被更多的软件开发人员所熟知;C语言也是目前IT界运用最广泛的开发语言之一。最近由于工作方面的原因,需要提供delphi调用c/c++编写的动态库的例子。在不同的开发语言之间相互调用,除了要熟练掌握各种语言的编写技巧之外,还要
2007-08-22 16:44:00 1271
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人