input poll

//声明
static struct input_polled_dev *mir3da_idev;

//分配
mir3da_idev->poll = mir3da_dev_poll;


/*----------------------------------------------------------------------------*/
//实现
static void mir3da_dev_poll(struct input_polled_dev *dev)
{
    report_abs();
}

//注册
result = input_register_polled_device(mir3da_idev);

 

 

#man poll

int poll(struct pollfd *fds, nfds_t nfds, int timeout);

#man epoll

 epollfd = epoll_create(10);

epoll_ctl(epollfd, EPOLL_CTL_ADD, listen_sock, &ev)

epoll_wait(epollfd, events, MAX_EVENTS, -1)

#man select

int select(int nfds, fd_set *readfds, fd_set *writefds,
                  fd_set *exceptfds, struct timeval *timeout);

 

timeout 超时返回

你可能感兴趣的:(linux,技术经验)