Crate pi_share

Crate pi_share 

Source
Expand description

默认 不带 任何 feature

§1. 几个类型封装

  • Share = Xrc | Arc
  • ShareWeak = xrc::Weak | sync::Weak
  • ShareMutex = LockCell(RefCell<T>) | Mutex
  • ShareRwLock = LockCell(RefCell<T>) | RwLock
  • ShareCell = cell::TrustCell
  • SharePtr = SyncUnsafeCell<T> | AtomicPtr<T>
  • ShareRefCell = XrcCell<T> | ArcCell<T>
  • ShareBool = SyncUnsafeCell<bool> | AtomicBool
  • ShareU8 = SyncUnsafeCell<u8> | AtomicU8
  • ShareU32 = SyncUnsafeCell<u32> | AtomicU32
  • ShareUsize = SyncUnsafeCell<usize> | AtomicUsize

§2. 提供 Send, Sync 的 封装

目的:wasm 不支持 Send + Sync

  • ThreadSend = Send
  • ThreadSync = Sync + Send

Re-exports§

pub use arc_cell::ArcCell as ShareRefCell;

Modules§

arc_cell
atomic
cell
Helper module for some internals, most users don’t need to interact with it.
lock
xrc
Thread-safe reference-counting pointers.
xrc_cell

Traits§

ThreadSend
ThreadSync

Functions§

fence

Type Aliases§

Cell
Share
ShareBool
ShareCell
ShareMutex
SharePtr
ShareRwLock
ShareU8
ShareU32
ShareU64
ShareUsize
ShareWeak