From 79e3856d7d4e159eae84093c6b5b5009b121cd8c Mon Sep 17 00:00:00 2001 From: Michael Bebenita Date: Tue, 7 Sep 2010 18:01:35 -0700 Subject: Small updates to test cases. --- src/test/run-fail/task-comm-14.rs | 3 +++ src/test/run-pass/task-comm-12.rs | 2 +- src/test/run-pass/task-comm-15.rs | 4 ++++ src/test/run-pass/threads.rs | 3 +-- 4 files changed, 9 insertions(+), 3 deletions(-) (limited to 'src') diff --git a/src/test/run-fail/task-comm-14.rs b/src/test/run-fail/task-comm-14.rs index f5fa27ac..786f7428 100644 --- a/src/test/run-fail/task-comm-14.rs +++ b/src/test/run-fail/task-comm-14.rs @@ -9,6 +9,9 @@ io fn main() { i = i - 1; } + // Spawned tasks are likely killed before they get a chance to send + // anything back, so we deadlock here. + i = 10; let int value = 0; while (i > 0) { diff --git a/src/test/run-pass/task-comm-12.rs b/src/test/run-pass/task-comm-12.rs index ab7c25e8..ceb6ba01 100644 --- a/src/test/run-pass/task-comm-12.rs +++ b/src/test/run-pass/task-comm-12.rs @@ -11,7 +11,7 @@ fn start(int task_number) { fn test00() { let int i = 0; - let task t = spawn thread start(i); + let task t = spawn thread "child" start(i); // Sleep long enough for the task to finish. _task.sleep(10000u); diff --git a/src/test/run-pass/task-comm-15.rs b/src/test/run-pass/task-comm-15.rs index 8d748f59..70680e24 100644 --- a/src/test/run-pass/task-comm-15.rs +++ b/src/test/run-pass/task-comm-15.rs @@ -9,6 +9,10 @@ io fn start(chan[int] c, int n) { io fn main() { let port[int] p = port(); + // Spawn a task that sends us back messages. The parent task + // is likely to terminate before the child completes, so from + // the child's point of view the receiver may die. We should + // drop messages on the floor in this case, and not crash! auto child = spawn thread "child" start(chan(p), 10); auto c <- p; } \ No newline at end of file diff --git a/src/test/run-pass/threads.rs b/src/test/run-pass/threads.rs index b0fee65f..aa6e763f 100644 --- a/src/test/run-pass/threads.rs +++ b/src/test/run-pass/threads.rs @@ -1,10 +1,9 @@ // -*- rust -*- fn main() { - let port[int] p = port(); let int i = 10; while (i > 0) { - spawn thread child(i); + spawn thread "child" child(i); i = i - 1; } log "main thread exiting"; -- cgit v1.2.3