pub struct Pollfd { /* private fields */ }Implementations§
Source§impl Pollfd
impl Pollfd
pub fn new( fd: c_int, events: c_short, revents: c_short, ) -> Result<Self, AeronCError>
Sourcepub fn new_zeroed_on_heap() -> Self
pub fn new_zeroed_on_heap() -> Self
creates zeroed struct where the underlying c struct is on the heap
Sourcepub fn new_zeroed_on_stack() -> Self
pub fn new_zeroed_on_stack() -> Self
creates zeroed struct where the underlying c struct is on the stack (Use with care)
pub fn fd(&self) -> c_int
pub fn events(&self) -> c_short
pub fn revents(&self) -> c_short
pub fn aeron_poll( &self, nfds: c_ulong, timeout: c_int, ) -> Result<i32, AeronCError>
pub fn get_inner(&self) -> *mut pollfd
Sourcepub unsafe fn get_inner_mut(&self) -> &mut pollfd
pub unsafe fn get_inner_mut(&self) -> &mut pollfd
Mutable access to the underlying C struct, minted from &self: nothing
prevents two live &mut at once, so the caller must ensure exclusive
access for the lifetime of the returned reference.
§Safety
No other reference (& or &mut) to the underlying struct may be
alive while the returned &mut is in use.
pub fn get_inner_ref(&self) -> &pollfd
Source§impl Pollfd
impl Pollfd
Sourcepub fn clone_struct(&self) -> Self
pub fn clone_struct(&self) -> Self
Regular clone just increases the reference count of underlying count.
clone_struct shallow copies the content of the underlying struct on heap.
NOTE: if the struct has references to other structs these will not be copied
Must be only used on structs which has no init/clean up methods. So its dangerous to use with Aeron/AeronContext/AeronPublication/AeronSubscription More intended for AeronArchiveRecordingDescriptor (note strings will not work as its a shallow copy)
Trait Implementations§
Source§impl Default for Pollfd
This will create an instance where the struct is zeroed, use with care
impl Default for Pollfd
This will create an instance where the struct is zeroed, use with care