Skip to content

Commit 0439162

Browse files
Jorge Aparicioalexcrichton
Jorge Aparicio
authored andcommitted
Move num_cpus from std::rt::util to std::os. Closes #14707
1 parent 88e1576 commit 0439162

File tree

2 files changed

+16
-13
lines changed

2 files changed

+16
-13
lines changed

src/libstd/os.rs

+15
Original file line numberDiff line numberDiff line change
@@ -57,6 +57,16 @@ use libc::c_char;
5757
#[cfg(windows)]
5858
use str::OwnedStr;
5959

60+
/// Get the number of cores available
61+
pub fn num_cpus() -> uint {
62+
unsafe {
63+
return rust_get_num_cpus();
64+
}
65+
66+
extern {
67+
fn rust_get_num_cpus() -> libc::uintptr_t;
68+
}
69+
}
6070

6171
pub static TMPBUF_SZ : uint = 1000u;
6272
static BUF_BYTES : uint = 2048u;
@@ -1762,6 +1772,11 @@ mod tests {
17621772
n
17631773
}
17641774

1775+
#[test]
1776+
fn test_num_cpus() {
1777+
assert!(os::num_cpus() > 0);
1778+
}
1779+
17651780
#[test]
17661781
fn test_setenv() {
17671782
let n = make_rand_name();

src/libstd/rt/util.rs

+1-13
Original file line numberDiff line numberDiff line change
@@ -11,23 +11,11 @@
1111
use from_str::FromStr;
1212
use from_str::from_str;
1313
use libc::uintptr_t;
14-
use libc;
1514
use option::{Some, None, Option};
1615
use os;
1716
use str::Str;
1817
use sync::atomics;
1918

20-
/// Get the number of cores available
21-
pub fn num_cpus() -> uint {
22-
unsafe {
23-
return rust_get_num_cpus();
24-
}
25-
26-
extern {
27-
fn rust_get_num_cpus() -> libc::uintptr_t;
28-
}
29-
}
30-
3119
/// Dynamically inquire about whether we're running under V.
3220
/// You should usually not use this unless your test definitely
3321
/// can't run correctly un-altered. Valgrind is there to help
@@ -81,7 +69,7 @@ pub fn default_sched_threads() -> uint {
8169
if limit_thread_creation_due_to_osx_and_valgrind() {
8270
1
8371
} else {
84-
num_cpus()
72+
os::num_cpus()
8573
}
8674
}
8775
}

0 commit comments

Comments
 (0)