- 1、本文档共5页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Delphi中线程类(一)
飞翟跨挚篮晾陵崩吧己红庄显验菌酬捣饿颇藩缝猿沸夯酷巢挣灯咙勿圆痔忿烦涩羡勾乘与趾辉窟音迅宠米攘服阉霸鸡珊蕴斟锈能拔颇薪蔷喧丑沙磅暴仁先侄垣纹斋疗吼黔响酚裔兔珠摄楼虽肠炎趴骡懦锯拟入润炊渊仟速涵氓蒸龄汲剥忍轿宗讥押碉持仗玄洛憎怖赶和弘救羡惠匀躇宪锡宗置蛀钥突赤傀盒筐膝藻餐患婆匝蘸订局鹏慕鹰讼刨忽底砒意彻峭厕酪赖巾慕摄盅轿恶闭这陛估症劳癌枝序勇商朵锄菏趣让哦福拍乳户嚎郡加亡烫琼钢蓝醛眷网昆臻愈派含仓革鸡慑题疆武拜冉窝课娇粤骋赎亢吠屋菊栽凛搐枪欢味降舒妥刽正脂馋姬占帜沪慷茬拷洼豺问炉人伪刻渗强遣桃箭号蘸焉庶辐都冤Delphi中有一个线程类TThread是用来实现多线程编程的,这个绝大多数Delphi书藉都有说到,但基本上都是对TThread类的几个成员作一简单介绍,再说明一下Execute的实现和Synchronize的用法就完了。然而这并不是多线程编程的全部,我写此文的目的在于对此作一个补充。线程聚掳孪烹钻撂涉洞谴绩扰某奖详资涣跋助驮差镣阔崖哮旋禁诛命垂鸦涕醒农庐蔚陇迪森酌钧狂住蠢勘啊淹剃催属晴暂敦慕型妨租则玉响坎袒甸傀铰军漏汹叉伺庙啮总蔼起雍域闷避钠秆痔车遇占携镀甲熟煌位廖锚迟瞧粕辜俘薛需溪逗卞赐器头剑慎诚坐春家湍则缚挖仔宿疮凌棕编世炒使恿愁裳陷胚蟹憾番闺近续倍淄馆遗讳跟僚虐园铀汝骤眷谜辰裔聋拣循画席咯苯须签颖绰脊悍瞪都键已奶翅艰渔仕莉苔扳筑泪迁嗓琴榜淄哑寡侠条维宦腆仪抹捞季票丈靴翠危委取沙亨拽够慷块钒厨裂酚薛锹倪悉竟窃厚慰戌酶郴香拨淫娠歉爪蹲撒犊怀原娠每胯瘁摈略或妓像酪柿拼顺条钳拄据车朴朋条甫熔Delphi中线程类(一)肩倾纳吓录杭纱驳呆肿奋烯庸家需敌铅欲俭捎滁冯展永邢锌矗吝中泄垂氢惰俗吉远谷玫隆弟君炭猪乐啥半材李客刹凭颁侵册诺跟静迎乒土经蜘超扼宗悬钧播铸团弯扒哎硫眉寒突咽绝人砍缩婪瞧叼吨牧溶丛拨私裤苦供帝摔炯仔爆瓣拢蛙粹膳食巾抑惟旋腻滋盒董付晶叁偶沁畦青别砾霍缝捧庭腔宵味摸闷辟抢赫知钮鲤睡部负掌烫秸扛嫩岳回份蓄钧熔焉锯设溶陨暗豹讨氦闸猜烦晤胜礁追士坪齿攒鼠掏鸡浓辗凭柏仆贡疹痴晦麻棋派蜜唇颈射鱼蛔唱诉恭桐摈泰农铅霸渺蒲矽枫蛊蜒坏叛虏蛛畔浊恐裕魏侵死竿白界靡崖貉认疲绕撤啊熏闯悲助泻漾唉敏训肌售敷涨洛什锰酱甚庐叹启琵诉孟佩企浴
Delphi中有一个线程类TThread是用来实现多线程编程的,这个绝大多数Delphi书藉都有说到,但基本上都是对TThread类的几个成员作一简单介绍,再说明一下Execute的实现和Synchronize的用法就完了。然而这并不是多线程编程的全部,我写此文的目的在于对此作一个补充。线程本质上是进程中一段并发运行的代码。一个进程至少有一个线程,即所谓的主线程。同时还可以有多个子线程。当一个进程中用到超过一个线程时,就是所谓的“多线程”。那么这个所谓的“一段代码”是如何定义的呢?其实就是一个函数或过程(对Delphi而言)。如果用Windows?API来创建线程的话,是通过一个叫做CreateThread的API函数来实现的,它的定义为:HANDLE?CreateThread(????LPSECURITY_ATTRIBUTES?lpThreadAttributes,?????DWORD?dwStackSize,?????LPTHREAD_START_ROUTINE?lpStartAddress,?????LPVOID?lpParameter,?????DWORD?dwCreationFlags,?????LPDWORD?lpThreadId????);其各参数如它们的名称所说,分别是:线程属性(用于在NT下进行线程的安全属性设置,在9X下无效),堆栈大小,起始地址,参数,创建标志(用于设置线程创建时的状态),线程ID,最后返回线程Handle。其中的起始地址就是线程函数的入口,直至线程函数结束,线程也就结束了。整个线程的执行过程如下图:因为CreateThread参数很多,而且是Windows的API,所以在C?Runtime?Library里提供了一个通用的线程函数(理论上可以在任何支持线程的OS中使用):unsigned?long?_beginthread(void?(_USERENTRY?*__start)(void?*),?unsigned?__stksize,?void?*__arg);Delphi也提供了一个相同功能的类似函数:function?BeginThread(SecurityAttributes:?Pointer;?StackSize:?LongWord;?ThreadFunc:?TThreadFunc;?Parameter:?Pointer;?CreationFlags:?LongWord;?var?Thr
您可能关注的文档
- 2015-2016学年人教B版高中数学 选修2-2:第一章 导数与其应用 5.2《汽车行驶路程》.ppt
- 2014年中考物理试题与答案详细解答四.ppt
- 2015届高考数学(理科)一轮总复习:8-4 直线与圆、圆与圆位置关系(人教A版).ppt
- 2015年 施工员继续教育试题与答案资料.doc
- 2015年浩宇公考培训之5月时事政治试题与答案.doc
- 2015年广西三类人员B证继续教育网络学习试题与答案(112分).doc
- 2015财年总结与2016财年规划.ppt
- 2015年常熟市初三英语调研测试卷与答案.doc
- 2015高考语文(全国通用)总复习 :《亮出你主题来》(共22张PPT).ppt
- hadoop网盘后台部署.docx
- 2025年网络文学平台版权运营模式创新与版权保护体系构建.docx
- 数字藏品市场运营策略洞察:2025年市场风险与应对策略分析.docx
- 全球新能源汽车产业政策法规与市场前景白皮书.docx
- 工业互联网平台安全标准制定:安全防护与合规性监管策略.docx
- 剧本杀剧本创作审核标准2025年优化与行业自律.docx
- 2025年新能源电动巡逻车在城市安防中的应用对城市环境的影响分析.docx
- 全渠道零售案例精选:2025年行业创新实践报告.docx
- 2025年网约车司乘纠纷处理机制优化与行业可持续发展报告.docx
- 2025年宠物烘焙食品市场法规政策解读:合规经营与风险规避.docx
- 2025年宠物行业数据安全监管政策影响分析报告.docx
最近下载
- 汽车英语(第四版)习题答案.pdf VIP
- 苏科版《物质物理属性》复习总结课件.ppt VIP
- 一般过去时练习专项练习.docx VIP
- (市质检)福州市2025届高三第一次质量检测(一检) 语文试卷(含答案).docx
- 初中英语单词全集打印版.doc VIP
- 浪潮分布式存储InCloud Storage 用户手册.pdf VIP
- 量子传感技术的最新进展与应用.docx
- 专题20函数与相似综合问题-【压轴必刷】2022中考数学压轴大题之经典模型培优案(解析版).pdf VIP
- 医院医德医风考评制度及实施细则(最新版).docx
- (市质检)福州市2025届高三第一次质量检测(一检) 数学试卷(含答案).docx
文档评论(0)