打印

熟悉EPOLL的高手帮个忙

熟悉EPOLL的高手帮个忙

在EPOLL编程中,当EPOLL_WAIT后,在epoll_event的结构体中有个data.ptr,之后可以用类型转换为其他类型
列如  Socket *sock = static_cast<Socket*>(evts.data.ptr)

这个Socket是自己定义的类

其实我也不知道该怎么问这个问题,就是转换后为什么能把data.ptr的东西变为Socket的东西,然后进行操作,ptr里面到底是什么
正在成长中ing!

TOP

复制内容到剪贴板
代码:
typedef union epoll_data {
               void    *ptr;
               int      fd;
               uint32_t u32;
               uint64_t u64;
           } epoll_data_t;

           struct epoll_event {
               uint32_t     events;    /* Epoll events */
               epoll_data_t data;      /* User data variable */
           };
莫道情事多悲喜,少年无心闻凄涕。莫言男女多曲折,丈夫不屑品涟漪。──默难 干点好事总想让鬼神知道,干点坏事总以为鬼神不知道---我们太让鬼为难了! 生活日志: http://monnand.linuxsky.org 技术文章: http://blog.csdn.net/monnand/ 联系方式: E-mail: monnand at gmail dot com

TOP