社区
网络通信/分布式开发
帖子详情
请问delphi的indy控件,可以限制下载或上传的速率吗?例如idftp
hingor
2020-12-05 10:40:34
如题。有的话,要怎么实现?
...全文
261
2
打赏
收藏
请问delphi的indy控件,可以限制下载或上传的速率吗?例如idftp
如题。有的话,要怎么实现?
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
2 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
tanqth
2020-12-06
打赏
举报
回复
放一个IdInterceptThrottler组件,设置TIdHTTP的Intercept属性为TIdInterceptThrottler。 TIdInterceptThrottler有三个速度限制的属性: BitsPerSec:平均速度 RecvBitsPerSec:控制接收速度 SendBitsPerSec:发送的速度
日立奔腾浪潮微软松下联想
2020-12-06
打赏
举报
回复
Indy9使用TIdIOHandlerThrottle
Indy10使用TIdInterceptThrottler
delphi
INDY
控件
使用指南
不错的
Indy
资料。CSDN上有人
上传
过了。他说的十分。我下了,看了看写的不错,还整理了下。要想学习
Indy
9的话可以下来看看。
Delphi
-
Indy
中的线程
控件
不管什么语言,编写线程函数或者架构总是据一项基本功,对于
Delphi
语言也不例外,
Delphi
原生提供有线程对象TThread,直接使用TThread也没有问题,当然对于高版本的
Delphi
也还提供了TTask等多任务对象,包括匿名线程等等,但是本文将详细介绍
Delphi
中大名鼎鼎的
Indy
中的线程
控件
:T
Id
ThreadComponent。
Delphi
Delphi
7之
控件
indy
9.0.18-d7.exe
Delphi
Delphi
7之
控件
indy
9.0.18_d7.exe
INDY
控件
使用指南
使用T
Id
AntiFreeze对抗“冻结”
Indy
使用一个特殊的组件T
Id
AntiFreeze来透明地解决客户程序用户界面“冻结”的问题。T
Id
AntiFreeze在
Indy
内部定时中断对栈的调用,并在中断期间调用Application.ProcessMessages方法处理消息,而外部的
Indy
调用继续保存阻塞状态,就好像T
Id
AntiFreeze对象不存在一样。你只要在程序中的任意地方添加一个T
Id
AntiFreeze对象,就能在客户程序中利用到阻塞式Socket的所有优点而避开它的一些显著缺点。
Indy
使用了线程技术 阻塞式Socekt通常都采用线程技术,
Indy
也是如此。从最底层开始,
Indy
的设计都是线程化的。因此用
Indy
创建服务器和客户程序跟在Unix下十分相似,并且
Delphi
的快速开发环境和
Indy
对WinSock的良好封装使得应用程序创建更加容易。
Indy
服务器模型 一个典型的Unix服务器有一个或多个监听进程,它们不停地监听进入的客户连接请求。对于每一个需要服务的客户,都fork一个新进程来处理该客户的所有事务。这样一个进程只处理一个客户连接,编程就变得十分容易。
Indy
服务器工作原理同Unix服务器十分类似,只是Windows不像Unix那样支持fork,而是支持线程,因此
Indy
服务器为每一个客户连接分配一个线程。 图1显示了
Indy
服务器的工作原理。
Indy
服务器组件创建一个同应用程序主线程分离的监听线程来监听客户连接请求,对于接受的每一个客户,都创建一个新的线程来为该客户提供服务,所有与这一客户相关的事务都由该线程来处理。 使用组件T
Id
ThreadMgrPool,
Indy
还支持线程池。 线程与
Indy
客户程序
Indy
客户端组件并未使用线程。但是在一些高级的客户程序中,程序员可以在自定义的线程中使用
Indy
客户端组件,以使用户界面更加友好。
Delphi
开发之
indy
组件——
ID
FTP
的使用
Delphi
开发之
indy
组件——
ID
FTP
的使用
网络通信/分布式开发
1,594
社区成员
32,958
社区内容
发帖
与我相关
我的任务
网络通信/分布式开发
Delphi 网络通信/分布式开发
复制链接
扫一扫
分享
社区描述
Delphi 网络通信/分布式开发
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章