diff options
| author | joboet <jonasboettiger@icloud.com> | 2025-08-29 18:01:02 +0200 | 
|---|---|---|
| committer | joboet <jonasboettiger@icloud.com> | 2025-09-08 17:02:25 +0200 | 
| commit | 4b15dd5a84742f9e7641b62e490765e0c1cb415c (patch) | |
| tree | 323e992bcaee2813813a29d5d27c9a94304311cd /library/std/src/sys/pal/wasm/atomics/thread.rs | |
| parent | beeb8e3af54295ba494c250e84ecda4c2c5d85ff (diff) | |
| download | rust-4b15dd5a84742f9e7641b62e490765e0c1cb415c.tar.gz rust-4b15dd5a84742f9e7641b62e490765e0c1cb415c.zip | |
std: move `thread` into `sys` (rename only)
Diffstat (limited to 'library/std/src/sys/pal/wasm/atomics/thread.rs')
| -rw-r--r-- | library/std/src/sys/pal/wasm/atomics/thread.rs | 75 | 
1 files changed, 0 insertions, 75 deletions
| diff --git a/library/std/src/sys/pal/wasm/atomics/thread.rs b/library/std/src/sys/pal/wasm/atomics/thread.rs deleted file mode 100644 index 42a7dbdf8b8..00000000000 --- a/library/std/src/sys/pal/wasm/atomics/thread.rs +++ /dev/null @@ -1,75 +0,0 @@ -use crate::ffi::CStr; -use crate::io; -use crate::num::NonZero; -use crate::sys::unsupported; -use crate::time::{Duration, Instant}; - -pub struct Thread(!); - -pub const DEFAULT_MIN_STACK_SIZE: usize = 1024 * 1024; - -impl Thread { - // unsafe: see thread::Builder::spawn_unchecked for safety requirements - pub unsafe fn new( - _stack: usize, - _name: Option<&str>, - _p: Box<dyn FnOnce()>, - ) -> io::Result<Thread> { - unsupported() - } - - pub fn yield_now() {} - - pub fn set_name(_name: &CStr) {} - - pub fn sleep(dur: Duration) { - #[cfg(target_arch = "wasm32")] - use core::arch::wasm32 as wasm; - #[cfg(target_arch = "wasm64")] - use core::arch::wasm64 as wasm; - - use crate::cmp; - - // Use an atomic wait to block the current thread artificially with a - // timeout listed. Note that we should never be notified (return value - // of 0) or our comparison should never fail (return value of 1) so we - // should always only resume execution through a timeout (return value - // 2). - let mut nanos = dur.as_nanos(); - while nanos > 0 { - let amt = cmp::min(i64::MAX as u128, nanos); - let mut x = 0; - let val = unsafe { wasm::memory_atomic_wait32(&mut x, 0, amt as i64) }; - debug_assert_eq!(val, 2); - nanos -= amt; - } - } - - pub fn sleep_until(deadline: Instant) { - let now = Instant::now(); - - if let Some(delay) = deadline.checked_duration_since(now) { - Self::sleep(delay); - } - } - - pub fn join(self) {} -} - -pub(crate) fn current_os_id() -> Option<u64> { - None -} - -pub fn available_parallelism() -> io::Result<NonZero<usize>> { - unsupported() -} - -pub mod guard { - pub type Guard = !; - pub unsafe fn current() -> Option<Guard> { - None - } - pub unsafe fn init() -> Option<Guard> { - None - } -} | 
