Es ist völlig in Ordnung, Ihre epoll_event-Struktur sofort wegzuwerfen oder wiederzuverwenden.
Der Kernel kopiert die Parameter aus der Struktur epoll_event.
Dies ist genau dasselbe, als ob Sie ein ioctl verwenden, das eine Struktur als Parameter verwendet, oder eine Socket-Operation (z. B. bind), die eine Struktur sockaddr_in akzeptiert.
Der Kernel nimmt, was er braucht, und Sie können ihn sofort freigeben.
Das Einzige, worum Sie sich kümmern müssen, sind die „Nutzungsdaten“, die nur für Sie relevant sind. Der Kernel wird es speichern, aber Sie müssen wissen, was es bedeutet, wenn Sie ein Ereignis erhalten.
Alles ist gut. Der epoll_ctl
Die Funktion ist ein einfacher Wrapper um einen Systemaufruf, der vollständig abgeschlossen ist, wenn die Funktion zurückkehrt. Es werden keine weiteren Daten aus dem Userspace benötigt. Die Struktur ist einfach eine Möglichkeit, die Argumente zu verpacken.