使用asynchronous套接字处理多个客户端的服务器

我已经开发了一个使用multithreading的单服务器多客户端udp应用程序。 我想切换到一个单一的处理器系统,所以multithreading将不再帮助我:(

现在我想使用asynchronous套接字来实现服务器,以便它可以一次处理多个客户端。

这种方法能正常工作吗? 如果要使用单个服务器处理多个客户端,使用asynchronous套接字是否正确? 使用asynchronous套接字比使用线程处理多个客户端更好?

我建议你看看libevent: http : //www.libevent.org/它提供了组织异步服务器的所有必要的功能。

你可以多线程的服务器,以及使其异步。 除非你有很多连接(100s / 1000s),否则你可能不会注意到复用连接的任何方法的性能差异。 选择/轮询,线程,aio将在低连接数下执行大致相同的操作。 但是aio很难实施。