#[repr(C)]pub struct EpollEvent {
pub events: EpollEventType,
pub data: u64,
}
Expand description
表示 epoll 事件的结构体(对应 Linux 的 struct epoll_event
)
MUSL: https://github.com/bminor/musl/blob/c47ad25ea3b484e10326f933e927c0bc8cded3da/include/sys/epoll.h#L49
TODO: 根据 data 的类型,可能需要使用不同的结构体来表示不同的事件, 对应 C 语言的 union
NOTE: 在 x86_64 架构会添加 __attribute__ ((__packed__))
,以确保结构体的内存对齐
Fields§
§events: EpollEventType
事件类型(如可读、可写等,使用 EpollEventType 表示)
data: u64
用户数据(如 fd 或标识符),epoll 不做解释
Trait Implementations§
Source§impl Clone for EpollEvent
impl Clone for EpollEvent
Source§fn clone(&self) -> EpollEvent
fn clone(&self) -> EpollEvent
Returns a copy of the value. Read more
1.0.0§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moreAuto Trait Implementations§
impl Freeze for EpollEvent
impl RefUnwindSafe for EpollEvent
impl Send for EpollEvent
impl Sync for EpollEvent
impl Unpin for EpollEvent
impl UnwindSafe for EpollEvent
Blanket Implementations§
§impl<T> Any for Twhere
T: 'static + ?Sized,
impl<T> Any for Twhere
T: 'static + ?Sized,
§impl<T> Borrow<T> for Twhere
T: ?Sized,
impl<T> Borrow<T> for Twhere
T: ?Sized,
§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§unsafe fn clone_to_uninit(&self, dst: *mut u8)
unsafe fn clone_to_uninit(&self, dst: *mut u8)
🔬This is a nightly-only experimental API. (
clone_to_uninit
)