mirror of
https://github.com/rust-lang/rust.git
synced 2024-12-18 11:34:11 +00:00
auto merge of #9412 : thestinger/rust/no_starve_xfail, r=cmr
this is still broken on the bsd builder, perhaps because it has 1 core
This commit is contained in:
commit
33e913d9cf
@ -1212,25 +1212,22 @@ mod test {
|
||||
}
|
||||
}
|
||||
|
||||
#[test]
|
||||
// FIXME: #9407: xfail-test
|
||||
fn dont_starve_1() {
|
||||
use rt::comm::oneshot;
|
||||
use unstable::running_on_valgrind;
|
||||
|
||||
// FIXME: #9407: should work while serialized on valgrind
|
||||
if !running_on_valgrind() {
|
||||
do stress_factor().times {
|
||||
do run_in_mt_newsched_task {
|
||||
let (port, chan) = oneshot();
|
||||
do stress_factor().times {
|
||||
do run_in_mt_newsched_task {
|
||||
let (port, chan) = oneshot();
|
||||
|
||||
// This task should not be able to starve the sender;
|
||||
// The sender should get stolen to another thread.
|
||||
do spawntask {
|
||||
while !port.peek() { }
|
||||
}
|
||||
|
||||
chan.send(());
|
||||
// This task should not be able to starve the sender;
|
||||
// The sender should get stolen to another thread.
|
||||
do spawntask {
|
||||
while !port.peek() { }
|
||||
}
|
||||
|
||||
chan.send(());
|
||||
}
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user