EPOLL(C/S模型)实现I/O复用多进程聊天室,通过共享内存、socketpair实现父子进程通信,通过信号量回收进程
这里只展示了server端,client端可以用之前的poll写的。每个client我们fork一个子进程用epoll来实现它的I/O复用。非常巧妙的使用共享内存,通过给每个client编号以及BUFFER_SIZE保存需要广播和接受的内容,因为有了编号,所以父子进程的socketpair通信,我们只要传编号就可以表示这个client需要广播的内容了。最后就是里面注册的信号量,父进程不能直接说关闭