社区
网络通信/分布式开发
帖子详情
DELPHI 多线程
drifer
2017-08-01 06:06:17
我想做断线程连的动作,我在一个线程中关闭一个SOCKET连接结果就卡在那里不动了。
SocketConnection1.Connected := False; //就卡住了,在主线程中就正常
...全文
603
1
打赏
收藏
DELPHI 多线程
我想做断线程连的动作,我在一个线程中关闭一个SOCKET连接结果就卡在那里不动了。 SocketConnection1.Connected := False; //就卡住了,在主线程中就正常
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
1 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
pathletboy
2017-08-02
打赏
举报
回复
线程用Synchronize方法同步到主线程执行,不要在多线程中直接操作VCL控件。
【
delphi
11】
delphi
进阶【七、
多线程
编程在
Delphi
中的实现】
在深入
Delphi
的
多线程
编程之前,首先要理解并发(Concurrency)和
多线程
(Multithreading)的概念。:并发是指系统能够处理多个任务的能力,这些任务可能会交错执行,但在任意时刻,可能只有一个任务在执行。:
多线程
是并发的一种形式,它允许在同一个程序中同时运行多个线程来执行不同的任务。
Delphi
语言的
多线程
编程
在计算机科学中,线程是程序执行的基本单元。一个程序可以由多个线程并行执行,每个线程都可以独立执行任务。资源共享:多个线程可以共享进程的资源(如堆、全局变量等),避免资源冗余。更好的响应性:在用户界面应用中,主线程通常负责处理用户输入,辅助线程可以执行耗时的操作,避免界面冻结。并行处理:在多核处理器上,多个线程可以并行执行,提高程序的整体性能。然而,
多线程
编程也带来了复杂性,特别是在资源共享和同步方面,容易引发竞争条件等问题。
[
Delphi
]
Delphi
的
多线程
编程
.style1 { FONT-WEIGHT: bold; FONT-SIZE: 12px; COLOR: #ff6699}.yjx { BORDER-RIGHT: #f0f0f0 0px solid; BORDER-TOP: #f0f0f0 0px solid; BORDER-LEFT: #f0f0f0 0px solid; BORDER-BOTTOM: #f0f0f0 0px
Delphi
实现
多线程
线程是进程内一个相对独立的、可调度的执行单元。一个应用可以有一个主线程,一个主线程可以有多个子线程,子线程还可以有自己的子线程,这样就构成了
多线程
应用了。由于多个线程往往会同时访问同一块内存区域,频繁的访问这块区域,将会增加产生线程冲突的概率。一旦产生了冲突,将会造成不可预料的结果(该公用区域的值是不可预料的)可见处理线程同步的必要性。 注意:本文中出现的所有代码都是用
DELPHI
描述的
Delphi
的
多线程
开发实例
在软件开发的过程中,
多线程
的开发应用有着极为重要的位置,使用
多线程
可以让软件系统能够并行操作、同时也能提高其运行效率。作为软件开发人员的必修课之一,
多线程
的熟练运用可以让软件系统有更佳的性能表现。以下使用Window Api、
Delphi
封装的TThread类来分别创建线程,再以普通方法来执行一个耗时的过程,对比使用线程的好处。1. Windows API 函数直接创建
网络通信/分布式开发
1,594
社区成员
32,945
社区内容
发帖
与我相关
我的任务
网络通信/分布式开发
Delphi 网络通信/分布式开发
复制链接
扫一扫
分享
社区描述
Delphi 网络通信/分布式开发
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章