15

.NET 团队是否有任何计划使 Windows 8/Server 2012 中引入的 RIO 套接字在 .NET 中可用?

在此期间,我有哪些选择可以在 .NET 中使用它们 - 扩展 Socket 类?

除了 Windows API 文档、What's New for Windows Sockets和 Channel9 视频、开发低延迟网络应用程序的新技术之外,我几乎找不到任何关于它们的进一步文档。

4

2 回答 2

5

我在这里写了很多关于我从本机代码对 RIO 的初步调查(正如您原来问题的评论者所指出的那样)。

我很想知道您希望通过使用托管代码中的 RIO 来实现什么?RIO 可能的目标受众是需要减少网络代码延迟的开发人员。就我个人而言,我不相信托管代码对于 RIO 所针对的应用程序来说一定是理想的。我可能是错的,但我希望 CLR 有机会在任何时候触发垃圾收集不会是使用 RIO 的人想要的那种事情......

反正。我认为,如果您想从托管代码中使用 RIO,那么我建议不要简单地使用 P/Invoke,而是编写一个组件来管理本机代码中的所有 RIO 工作,并且可能会回调到各种网络上的托管事件。但同样,这就是我会这样做的方式......

于 2013-08-24T20:42:17.953 回答
4

RIO 正在为“通道”API 进行实验性研究,目前处于起步/探索阶段,但可从此处使用:https ://github.com/davidfowl/Channels 。这与 libuv API 和基于“通道”的 winsock API 并驾齐驱。关于您关于扩展套接字类的问题:这些 API 的性质似乎使一种不同的方法成为可取的——因此是“通道”。

于 2016-09-02T21:36:00.817 回答