Maxevents es solo la longitud de la matriz struct epoll_events
apuntada por *events
.
Si el núcleo tiene más que ese número de eventos para alimentar a su programa en ese momento, verá que no debería porque no espera que se devuelvan muchos en ese _wait en particular.
Probablemente necesite experimentar con el tamaño óptimo de esto para su programa. El tamaño óptimo puede incluso diferir según la arquitectura. Para pequeños números de descriptores de archivos sondeados, puede simplemente establecer maxevents
en la cantidad de archivos (y dimensionar la matriz events
en consecuencia), pero la probabilidad de que todos los archivos necesiten atención al mismo tiempo es baja, por lo que probablemente pueda para usar un valor más bajo maxevents
.