es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Tag: EPOLL

¿La función epoll_wait() devuelve los eventos uno por uno?

Digamos que agrego un socket a un epoll, esperando tanto eventos EPOLLIN como EPOLLOUT, algo así: struct epoll_event event; event.events = EPOLLIN | EPOLLOUT; epoll_ctl(epfd, EPOLL_CTL_ADD, socket, &event); Si el socket se vuelve legible y escribible, ¿necesitaría llamar a epoll_wait() dos veces para recibir ambos eventos, o devolverá un epoll_event . . . Read more

¿Cómo asignar event.ptr en epoll?

struct sockitem* NewSockItem(int sockfd, CallBack cb) { struct sockitem *si = (struct sockitem*)malloc(sizeof(struct sockitem)); si->sockfd = sockfd; si->callback = cb; return si; } struct epoll_event ev; ev.events = EPOLLIN | EPOLLET; ev.data.ptr = NewSockItem(clientfd, recv_cb); epoll_ctl(eventloop->epfd, EPOLL_CTL_ADD, clientfd, &ev); al compilar, se presenta un error como este:

Esperando simultáneamente epoll e io_uring

Estoy migrando mi proyecto a iouring para obtener un mejor rendimiento. Sin embargo, parte del sistema depende de epoll como sistema de eventos y no se puede mover a iouring (por ejemplo, los controladores de la base de datos escriben en el socket internamente y recibo notificaciones de eventos de . . . Read more