是否有用于Delphi的基于I / O完成端口的组件?

问题描述 投票:8回答:8

我知道IndyICSSynapseClever InetSuite,但都不支持IOCP。还有其他东西吗?

编辑:我发现iocpclasses ,它是用Delphi5编写的。总比没有好。

delphi iocp
8个回答
6
投票

检查http://voipobjects.com/index.php?page=delphi-iocp-library它已迁移iocpclasses.sourceforge.net(我是作者)。享受:)

更新:voipobjects没有此库的专用页面。它住在这里https://bitbucket.org/voipobjects/iocpengine


6
投票

Indy 10具有光纤和IOCP的实验支持:

来自Indy knowledge base

Indy 10提供实验支持用于光纤和I / O完成端口Windows平台中的API。这个支持旨在帮助创建更多可扩展的服务器,其中成千上万客户端同时连接数为需要。适用于中小型项目,传统的基于线程服务器仍然可用。

仅支持光纤和IOCP API适用于Windows 2000、2003和XP使用Delphi版本的操作系统7.不支持Windows 95、98和ME。 Delphi编译器之前由于以下原因,也不支持版本7自VCL以来的重大变化这些版本。

默认情况下未安装此工具,我自己也没有使用过,因此我不确定它有多少用处。我想您需要从其存储库下载最新的SVN修订版,才能使用此实验功能。

使用它必须简单明了;您创建一个IdTcpServer实例,而不使用默认的调度程序,而是使用提供IOCP支持的调度程序类。其余部分应视为提供的调度程序类的内部工作。


5
投票

Synopse mORMot and SynCrtSockDWScript's HttpSys2WebServer两者都具有基于IOCP的服务器。

Synopse实际上有两个使用IOCP的服务器,一个通过http.sys,另一个通过套接字。


4
投票

不是组件,而是示例:ISAPIThreadPool单元中的TISAPIThreadPool。


4
投票

查看基于Windows Completion Port并使用Windows Socket Extensions的高性能套接字服务器。支持IPv6。链接:http://www.torry.net/authorsmore.php?id=7131


3
投票

contributed files部分中有一个适用于Synapse的IOCPPool示例。


2
投票

有一个基于以前的iopcclasses项目的项目。

声称处理数千个同时连接

IOCP引擎是用于快速分类的类,组件和例程的集合创建高可扩展性和高性能的TCP / UDP应用程序。使用IOCP类创建的应用程序可以处理数千个同时连接。

[库是用Delphi编写的-支持Delphi 7-2010。

库使用IO完成端口技术。有最强大的Win32世界中用于创建高度可扩展和高性能的技术TCP / UDP应用程序。所有台式机均支持此技术Windows OS(旧版Win9x / WinME版本除外)。

此库已根据MPL1.1许可。还包括一些文件来自Jedi项目(Winsock2标头翻译)。

https://bitbucket.org/voipobjects/iocpengine


0
投票

[iocp-delphi作者:Ondrej Kelle,他也是chakracore-delphi的作者

© www.soinside.com 2019 - 2024. All rights reserved.