pub struct VirtualThread {
pub runtime: Arc<Runtime>,
pub memory: SharedMemory,
pub lock: ExecutorLock,
pub stack: Stack,
pub extension_data: ExtensionData,
pub registers: [Register; 16],
pub flags: AtomicU64,
/* private fields */
}Fields§
§runtime: Arc<Runtime>§memory: SharedMemory§lock: ExecutorLock§stack: Stack§extension_data: ExtensionData§registers: [Register; 16]§flags: AtomicU64Implementations§
Source§impl VirtualThread
impl VirtualThread
pub fn get_extension(&self, id: u32) -> Arc<Extension>
pub async fn get_temp_vmstrs(&self) -> MutexGuard<'_, HashSet<(u64, usize)>>
pub async fn set_error_data(&self, data: impl Into<String>)
pub fn get_block_info(&self) -> Arc<BlockInfo>
pub fn should_stop(&self) -> bool
pub async fn spawn(&self, addr: u64)
pub fn set_flag(&self, id: u64, value: bool)
pub fn get_flag(&self, id: u64) -> bool
pub fn sub32(&self, register: u8, amount: u32)
pub fn add32(&self, register: u8, amount: u32)
pub fn inc_inst(&self, amount: u64)
pub fn push(&self, value: u64)
pub fn pop(&self) -> u64
pub fn shutdown(self: VThread, shutdown_type: ShutdownType)
pub fn dispose(self: VThread)
pub fn get_mem<T: FfiPrimitive>(&self, addr: usize) -> T
pub fn get_mem_absolute<T: FfiPrimitive>(&self, addr: usize) -> T
pub fn set_mem_absolute<T: FfiPrimitive>(&self, addr: usize, data: T)
pub fn set_reg<T: FfiPrimitive>(&self, register: u8, data: T)
pub fn get_reg<T: FfiPrimitive>(&self, register: u8) -> T
Auto Trait Implementations§
impl !Freeze for VirtualThread
impl !RefUnwindSafe for VirtualThread
impl Send for VirtualThread
impl Sync for VirtualThread
impl !Unpin for VirtualThread
impl !UnwindSafe for VirtualThread
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more