diff options
| author | Brian Anderson <banderson@mozilla.com> | 2013-07-28 16:18:12 -0700 |
|---|---|---|
| committer | Brian Anderson <banderson@mozilla.com> | 2013-07-30 14:23:45 -0700 |
| commit | cb9ee7f5be0de2bb93688f8e2ef2934eb3bd7df7 (patch) | |
| tree | b7797ab53dc525897a22b452c394b302b1d32a51 /src | |
| parent | 0144c83213cb5ce43df61f149274379f49b6d7cb (diff) | |
| download | rust-cb9ee7f5be0de2bb93688f8e2ef2934eb3bd7df7.tar.gz rust-cb9ee7f5be0de2bb93688f8e2ef2934eb3bd7df7.zip | |
std: Remove ManualThreads spawn mode
Diffstat (limited to 'src')
| -rw-r--r-- | src/libextra/sync.rs | 2 | ||||
| -rw-r--r-- | src/libstd/task/mod.rs | 37 | ||||
| -rw-r--r-- | src/libstd/task/rt.rs | 2 | ||||
| -rw-r--r-- | src/libstd/task/spawn.rs | 8 | ||||
| -rw-r--r-- | src/rt/rust_builtin.cpp | 12 | ||||
| -rw-r--r-- | src/rt/rustrt.def.in | 2 |
6 files changed, 2 insertions, 61 deletions
diff --git a/src/libextra/sync.rs b/src/libextra/sync.rs index 743c4347a4b..9dde95d0ac4 100644 --- a/src/libextra/sync.rs +++ b/src/libextra/sync.rs @@ -890,7 +890,7 @@ mod tests { fn test_sem_runtime_friendly_blocking() { // Force the runtime to schedule two threads on the same sched_loop. // When one blocks, it should schedule the other one. - do task::spawn_sched(task::ManualThreads(1)) { + do task::spawn_sched(task::SingleThreaded) { let s = ~Semaphore::new(1); let s2 = ~s.clone(); let (p,c) = comm::stream(); diff --git a/src/libstd/task/mod.rs b/src/libstd/task/mod.rs index df927cb6a7a..f78b4085cd0 100644 --- a/src/libstd/task/mod.rs +++ b/src/libstd/task/mod.rs @@ -107,8 +107,6 @@ pub enum SchedMode { SingleThreaded, /// Tasks are distributed among available CPUs ThreadPerTask, - /// Tasks are distributed among a fixed number of OS threads - ManualThreads(uint), } /** @@ -933,13 +931,6 @@ fn test_try_fail() { } #[test] -#[should_fail] -#[ignore(cfg(windows))] -fn test_spawn_sched_no_threads() { - do spawn_sched(ManualThreads(0u)) { } -} - -#[test] fn test_spawn_sched() { let (po, ch) = stream::<()>(); let ch = SharedChan::new(ch); @@ -1220,34 +1211,6 @@ fn test_child_doesnt_ref_parent() { } #[test] -fn test_spawn_thread_on_demand() { - let (port, chan) = comm::stream(); - - do spawn_sched(ManualThreads(2)) || { - unsafe { - let max_threads = rt::rust_sched_threads(); - assert_eq!(max_threads as int, 2); - let running_threads = rt::rust_sched_current_nonlazy_threads(); - assert_eq!(running_threads as int, 1); - - let (port2, chan2) = comm::stream(); - - do spawn_sched(CurrentScheduler) || { - chan2.send(()); - } - - let running_threads2 = rt::rust_sched_current_nonlazy_threads(); - assert_eq!(running_threads2 as int, 2); - - port2.recv(); - chan.send(()); - } - } - - port.recv(); -} - -#[test] fn test_simple_newsched_spawn() { use rt::test::run_in_newsched_task; diff --git a/src/libstd/task/rt.rs b/src/libstd/task/rt.rs index 3720bc585cc..13c51230dc2 100644 --- a/src/libstd/task/rt.rs +++ b/src/libstd/task/rt.rs @@ -36,8 +36,6 @@ extern { pub fn rust_get_sched_id() -> sched_id; pub fn rust_new_sched(num_threads: libc::uintptr_t) -> sched_id; - pub fn rust_sched_threads() -> libc::size_t; - pub fn rust_sched_current_nonlazy_threads() -> libc::size_t; pub fn get_task_id() -> task_id; #[rust_stack] diff --git a/src/libstd/task/spawn.rs b/src/libstd/task/spawn.rs index 61dcc33c629..7f343a15f94 100644 --- a/src/libstd/task/spawn.rs +++ b/src/libstd/task/spawn.rs @@ -84,7 +84,7 @@ use local_data; use task::local_data_priv::{local_get, local_set, OldHandle}; use task::rt::rust_task; use task::rt; -use task::{Failure, ManualThreads, PlatformThread, SchedOpts, SingleThreaded}; +use task::{Failure, PlatformThread, SchedOpts, SingleThreaded}; use task::{Success, TaskOpts, TaskResult, ThreadPerTask}; use task::{ExistingScheduler, SchedulerHandle}; use task::unkillable; @@ -814,12 +814,6 @@ fn spawn_raw_oldsched(mut opts: TaskOpts, f: ~fn()) { ThreadPerTask => { fail!("ThreadPerTask scheduling mode unimplemented") } - ManualThreads(threads) => { - if threads == 0u { - fail!("can not create a scheduler with no threads"); - } - threads - } }; unsafe { diff --git a/src/rt/rust_builtin.cpp b/src/rt/rust_builtin.cpp index bcf5575cede..3c9bff000ea 100644 --- a/src/rt/rust_builtin.cpp +++ b/src/rt/rust_builtin.cpp @@ -549,18 +549,6 @@ start_task(rust_task *target, fn_env_pair *f) { target->start(f->f, f->env, NULL); } -extern "C" CDECL size_t -rust_sched_current_nonlazy_threads() { - rust_task *task = rust_get_current_task(); - return task->sched->number_of_threads(); -} - -extern "C" CDECL size_t -rust_sched_threads() { - rust_task *task = rust_get_current_task(); - return task->sched->max_number_of_threads(); -} - // This is called by an intrinsic on the Rust stack and must run // entirely in the red zone. Do not call on the C stack. extern "C" CDECL MUST_CHECK bool diff --git a/src/rt/rustrt.def.in b/src/rt/rustrt.def.in index d6692d378ba..ccbff776dcf 100644 --- a/src/rt/rustrt.def.in +++ b/src/rt/rustrt.def.in @@ -41,8 +41,6 @@ rust_log_console_off rust_should_log_console rust_set_environ rust_unset_sigprocmask -rust_sched_current_nonlazy_threads -rust_sched_threads rust_set_exit_status rust_start rust_env_pairs |
