C#有像 C++的 libevent 同样定位的高性能跨平台网络库吗?

172 天前
 xmagicer
1511 次点击
所在节点    C#
5 条回复
wanguorui123
172 天前
HP-Socket
coder001
172 天前
xmagicer
171 天前
看了下 runtime 的源码,看起来是内置就支持 iocp 和 epoll 的
INCerry
160 天前
其实 C#本身自带的库就是高性能的,在 ASP.NET Core 2.0 以前,还是用的 libuv ,后面完全使用.NET 自带的了。
另外要是不想用自带的,C++的库导出以后,也是可以直接在 C#中使用的。
nebkad
153 天前
用 C# 写网络应用,性能瓶颈不在于跨平台异步框架设计带来的 IO 开销,因为实际上都是直接利用底层 OS API (例如 epoll iocp kqueue 等等)提供的支持,也就是说做到了别的语言最多只能一样快。

性能瓶颈在于一些 corner case 下,GC 阻碍了资源(不仅仅是内存,还有内存上面你写的对象)的及时释放而导致的奇怪问题。尽管有 `IDisposable` 但还是会写得很痛苦,心智负担很高。

但如果你只是原型开发、快速开发简单业务,那么 C# 可以搞一搞。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1041885

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX