Skip to main content

AeronAsyncExecutor

Struct AeronAsyncExecutor 

Source
pub struct AeronAsyncExecutor { /* private fields */ }

Implementations§

Source§

impl AeronAsyncExecutor

Source

pub fn new( async_enabled: bool, aeron_epoch_clock: aeron_clock_func_t, clientd: *mut c_void, queue: AeronBlockingLinkedQueue, return_queue: AeronBlockingLinkedQueue, runner: AeronAgentRunner, name_resolver: *mut aeron_name_resolver_t, ) -> Result<Self, AeronCError>

Source

pub fn new_zeroed_on_heap() -> Self

creates zeroed struct where the underlying c struct is on the heap

Source

pub fn new_zeroed_on_stack() -> Self

creates zeroed struct where the underlying c struct is on the stack (Use with care)

Source

pub fn async_enabled(&self) -> bool

Source

pub fn aeron_epoch_clock(&self) -> aeron_clock_func_t

Source

pub fn clientd(&self) -> *mut c_void

Source

pub fn queue(&self) -> AeronBlockingLinkedQueue

Source

pub fn return_queue(&self) -> AeronBlockingLinkedQueue

Source

pub fn runner(&self) -> AeronAgentRunner

Source

pub fn name_resolver(&self) -> *mut aeron_name_resolver_t

Source

pub fn init( &self, context: &AeronDriverContext, name_resolver: *mut aeron_name_resolver_t, agent_role_name: &CStr, clientd: *mut c_void, ) -> Result<i32, AeronCError>

Source

pub fn do_work(clientd: *mut c_void) -> Result<i32, AeronCError>

Source

pub fn on_start(state: *mut c_void, role_name: &CStr)

Source

pub fn close(&self) -> Result<i32, AeronCError>

Source

pub fn submit<AeronAsyncExecutorTaskCancelFuncHandlerImpl: AeronAsyncExecutorTaskCancelFuncCallback>( &self, on_execute: aeron_async_executor_task_on_execute_func_t, on_complete: aeron_async_executor_task_on_complete_func_t, on_cancel: Option<&Handler<AeronAsyncExecutorTaskCancelFuncHandlerImpl>>, ) -> Result<i32, AeronCError>

Source

pub fn submit_once<AeronAsyncExecutorTaskCancelFuncHandlerImpl: FnMut(*mut c_void)>( &self, on_execute: aeron_async_executor_task_on_execute_func_t, on_complete: aeron_async_executor_task_on_complete_func_t, on_cancel: AeronAsyncExecutorTaskCancelFuncHandlerImpl, ) -> Result<i32, AeronCError>

NOTE: aeron must not store this closure and instead use it immediately. If not you will get undefined behaviour, use with care

Source

pub fn process_completions(&self, limit: c_int) -> Result<i32, AeronCError>

Source

pub fn get_inner(&self) -> *mut aeron_async_executor_t

Source

pub fn get_inner_mut(&self) -> &mut aeron_async_executor_t

Source

pub fn get_inner_ref(&self) -> &aeron_async_executor_t

Source§

impl AeronAsyncExecutor

Source

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 Clone for AeronAsyncExecutor

Source§

fn clone(&self) -> AeronAsyncExecutor

Returns a duplicate of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for AeronAsyncExecutor

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Default for AeronAsyncExecutor

This will create an instance where the struct is zeroed, use with care

Source§

fn default() -> Self

Returns the “default value” for a type. Read more
Source§

impl Deref for AeronAsyncExecutor

Source§

type Target = aeron_async_executor_stct

The resulting type after dereferencing.
Source§

fn deref(&self) -> &Self::Target

Dereferences the value.
Source§

impl From<&AeronAsyncExecutor> for *mut aeron_async_executor_t

Source§

fn from(value: &AeronAsyncExecutor) -> Self

Converts to this type from the input type.
Source§

impl From<*const aeron_async_executor_stct> for AeronAsyncExecutor

Source§

fn from(value: *const aeron_async_executor_t) -> Self

Converts to this type from the input type.
Source§

impl From<*mut aeron_async_executor_stct> for AeronAsyncExecutor

Source§

fn from(value: *mut aeron_async_executor_t) -> Self

Converts to this type from the input type.
Source§

impl From<AeronAsyncExecutor> for *mut aeron_async_executor_t

Source§

fn from(value: AeronAsyncExecutor) -> Self

Converts to this type from the input type.
Source§

impl From<AeronAsyncExecutor> for aeron_async_executor_t

Source§

fn from(value: AeronAsyncExecutor) -> Self

Converts to this type from the input type.
Source§

impl From<aeron_async_executor_stct> for AeronAsyncExecutor

Source§

fn from(value: aeron_async_executor_t) -> Self

Converts to this type from the input type.

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<P, T> Receiver for P
where P: Deref<Target = T> + ?Sized, T: ?Sized,

Source§

type Target = T

🔬This is a nightly-only experimental API. (arbitrary_self_types)
The target type on which the method may be called.
Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.