diff options
| author | bors <bors@rust-lang.org> | 2015-03-17 17:15:54 +0000 |
|---|---|---|
| committer | bors <bors@rust-lang.org> | 2015-03-17 17:15:54 +0000 |
| commit | bfac337daab9b86971bcb3db61382ac44f94621c (patch) | |
| tree | 34bc72817ddffae38dde0fa30b8f35a0bc92e1d3 /src/libstd/sys/common | |
| parent | c64d671671aea2e44ee7fc6eb00ee75fc30ed7b9 (diff) | |
| parent | 04cf5344111c357ad80335b88709281bb4bfaa0a (diff) | |
| download | rust-bfac337daab9b86971bcb3db61382ac44f94621c.tar.gz rust-bfac337daab9b86971bcb3db61382ac44f94621c.zip | |
Auto merge of #23330 - alexcrichton:thread-sleep, r=aturon
This function is the current replacement for `std::old_io::timer` which will soon be deprecated. This function is unstable and has its own feature gate as it does not yet have an RFC nor has it existed for very long.
Diffstat (limited to 'src/libstd/sys/common')
| -rw-r--r-- | src/libstd/sys/common/thread.rs | 15 |
1 files changed, 5 insertions, 10 deletions
diff --git a/src/libstd/sys/common/thread.rs b/src/libstd/sys/common/thread.rs index 731617858e9..f45daea18a2 100644 --- a/src/libstd/sys/common/thread.rs +++ b/src/libstd/sys/common/thread.rs @@ -8,28 +8,23 @@ // option. This file may not be copied, modified, or distributed // except according to those terms. -use core::prelude::*; +use prelude::v1::*; -use boxed::Box; -use mem; use usize; use libc; use thunk::Thunk; use sys_common::stack; -use sys::{thread, stack_overflow}; +use sys::stack_overflow; // This is the starting point of rust os threads. The first thing we do // is make sure that we don't trigger __morestack (also why this has a // no_stack_check annotation), and then we extract the main function // and invoke it. #[no_stack_check] -pub fn start_thread(main: *mut libc::c_void) -> thread::rust_thread_return { +pub fn start_thread(main: *mut libc::c_void) { unsafe { stack::record_os_managed_stack_bounds(0, usize::MAX); - let handler = stack_overflow::Handler::new(); - let f: Box<Thunk> = Box::from_raw(main as *mut Thunk); - f.invoke(()); - drop(handler); - mem::transmute(0 as thread::rust_thread_return) + let _handler = stack_overflow::Handler::new(); + Box::from_raw(main as *mut Thunk).invoke(()); } } |
