我有一个在Linux上运行的C程序,它将从4个不同的IP地址接收数据,每隔250mS(每秒4次)在同一个UDP端口上。每个套接字上的数据不超过每个套接字120个字节,并使用UDP。我的问题是,如果我使用select()Linux调用,如果数据同时到达套接字,我是否能够处理所有数据而不会丢失任何数据?我是否必须使用Pthreads?
如果我使用select(),我只需要每隔250mS将数据转储到缓冲区中,然后在从select()接收所有四个套接字数据后处理它吗?假设处理可以在250mS内完成,它应该只需要10mS或更少。