异步 UDP 操作的 .NET IOCP 线程池开销
我开发了一个 VoIP 媒体服务器,它与远程 SIP 端点交换 RTP 数据包。它需要很好地扩展——虽然我最初担心我的 C# 实现不会接近它所取代的 C++ 版本,…
GetQueuedCompletionStatus 延迟
我编写了基于 iocp 机制的用于管理网络通信的复杂库。问题是,当服务器通过调用 API 方法 closesocket() 关闭连接时,此信息有时会延迟几秒甚至几分钟…
IOCP C++ TCP客户端
我在实现 TCP IOCP 客户端时遇到一些问题。我已经在 Mac OSX 上实现了 kqueue,因此希望在 Windows 上做类似的事情,我的理解是 IOCP 是最接近的。主…
是否有可能无法收到 WSASend 调用的完成信息?
正如标题所示,在与 I/O 完成端口关联的套接字上进行成功 WSASend 调用是否可能因线程以外的任何原因而不会发布完成结束? 我遇到了一种奇怪的情况,…
并行 ping 多个网络设备的最佳方法是什么?
我通过迭代 ping 轮询网络中的许多设备(超过 300 个)。 该程序按顺序轮询设备,因此速度很慢。 我想提高轮询的速度。 在 Delphi 7 中有一些方法可以…
将 SSL 添加到基于 IOCP 的 Windows 服务器的最简单方法?
我有一个基于 IOCP 的服务器,我们已经使用了很长时间。现在我们需要为此添加 SSL 支持。我正在努力寻找一个干净的解决方案。我发现其他两个线程中建…
TCP IOCP 在acceptex 之后不会接收
我正在尝试编写一个 IOCP 服务器。基本上,我让它接受新的连接。为了进行测试,我正在运行并连接到 127.0.0.1。 我在调用 AcceptEx() 之前创建了伪套…
如何使用 IOCP 将用户定义的数据传递给工作线程?
嘿...我使用 I/O 完成端口和 Winsock 创建了一个小型测试服务器。 我可以成功连接并将套接字句柄与完成端口关联。 但我不知道如何将用户定义的数据结…
I/O 完成端口可以帮助数据库而不是文件写入吗?
我正在阅读 IOCP,据我所知,异步写入仅适用于写入文件的上下文。我所说的“文件”并不仅仅指磁盘文件,而是 Windows 上的“文件”类型输出设备。 我…
支持重叠 I/O(对于 IOCP)的定时器?
我需要在基于 I/O 完成端口 (IOCP) 的应用程序中添加计时器支持。我想避免使用特定线程来管理计时器。 在 Linux 上,您可以创建一个通过文件描述符传…