//@ run-pass | |
//@ needs-threads | |
use std::thread; | |
pub fn main() { test05(); } | |
fn test05_start<F:FnOnce(isize)>(f: F) { | |
f(22); | |
} | |
fn test05() { | |
let three: Box<_> = Box::new(3); | |
let fn_to_send = move|n:isize| { | |
println!("{}", *three + n); // will copy x into the closure | |
assert_eq!(*three, 3); | |
}; | |
thread::spawn(move|| { | |
test05_start(fn_to_send); | |
}).join().ok().unwrap(); | |
} |