在线程对象被释放之前,首先要检查线程是否还在执行中,如果线程还在执行中(线程ID不为0,并且线程结束标志未设置),则调用Terminate 过程结束线程。Terminate 过程只是简单地设置线程类的 Terminated标志,如下面的代码:1234procedureTThread.Terminat... Read More
posted @ 2015-11-17 18:40 findumars Views(1719) Comments(0) Diggs(0)
当有多个线程的时候,经常需要去同步这些线程以访问同一个数据或资源。 例如,假设有一个程序,其中一个线程用于把文件读到内存,而另一个线程用于统计文件的字符数。当然,在整个文件调入内存之前,统计它的计数是没有意义的。但是,由于每个操作都有自己的线程,操作系统会把两个线程当做是互不相干的任务分别执行,这... Read More
posted @ 2015-11-17 18:38 findumars Views(702) Comments(0) Diggs(0)
尽管多线程能够解决许多问题,但是同时它又给我们带来了很多的问题。其中主要的问题就是:对全局变量或句柄这样的全局资源如何访问?另外,当必须确保一个线程中的某些事件要在另一个线程中的其他时间之前(或之后)发生时,该怎么办?这里将讲解通过使用由 Delphi提供的线程局部存储和 A P I为线程提供同步的... Read More
posted @ 2015-11-17 18:33 findumars Views(471) Comments(0) Diggs(0)
*Delphi之通过代码示例学习XML解析、StringReplace的用法 这个程序可以用于解析任何合法的XML字符串。首先是看一下程序的运行效果: 以解析这样一个XML的字符串为例:张三1234时间简史234343453534霍金 首先是打开应用程序 然后将上面所... Read More
posted @ 2015-11-17 18:20 findumars Views(465) Comments(0) Diggs(0)
参考自:http://www.cnblogs.com/railgunman/articles/1800318.html Delphi 中默认有input 和 output 两个文件变量,使用可以不用定义,直接使用。但是,input 只读、output 只写。使用的时候要注意以免引起异常。 文件是... Read More
posted @ 2015-11-17 18:18 findumars Views(2925) Comments(0) Diggs(0)