关于linux下select函数的使用
最近在做一个项目,需要一个服务器能同时为多个客户端服务,我们使用socket,同时,为了提高效率,服务器端也使用多线程的方式来为多个客户服务。
在网上找了很久,发现了一个select()的函数,然后我就想问一下,比如select(maxfd,&readfd,&writefd,NULL,NULL)
然后比如一个文件描述符fd读就绪后,函数返回,然后用FD_ISSET()来判断是不是读就绪,然后把数据读取进来,
然后,这时我想再向客户端发送数据,那这时候能直接用FD——ISSET()来判断是否可写吗?还是需要重新select()?如果用select的话,还得重新初始化FD_SET,再向里面填充文件描述符啊?
家具屋辉夜
10 years, 6 months ago