1

我正在为 C 寻找一个 NIO 类型的库。我想实现一个多线程 UDP 网络服务器,它将有很多客户端连接到它。

而不是尝试编写我自己的程序来处理数据包和“连接”。我想我会看看是否还没有经过测试和构建以实现可伸缩性和高性能的现有库。

我找到了一些用于 Java 的,但没有找到用于 C 的。例如 Apache Mina。

我希望有人知道一个可以帮助我的好人。塔克斯

4

3 回答 3

4

听起来你想要抽象一些东西select()poll()或者任何对你的平台最有效的机制。

你看过libeventlibev吗?这里有一篇不错的文章。

于 2013-03-29T21:45:35.773 回答
1

首先,C 没有类。其次,C 为您提供了实现可扩展和高性能解决方案所需的一切。它比 java 的 NIO 级别更低,但在 google 中有很好的教程。

如果你想要一个库 - 试试boosts' asio。它是 C++,但也许你可以使用它。

于 2013-03-29T21:45:31.787 回答
1

如果您使用的是 Linux,我强烈建议您使用 POSIX API。它为您提供跨任何 Linux 机器的多线程和网络资源。

GNU C 库

于 2013-03-29T21:46:28.897 回答