f911ba985a
From-SVN: r102074
49 lines
1.2 KiB
Java
49 lines
1.2 KiB
Java
import java.lang.*;
|
|
|
|
/* Simple producer/consumer thread test. */
|
|
|
|
public class ThreadTest implements Runnable {
|
|
|
|
static String threadName = "Running thread";
|
|
static int count = 0;
|
|
static int max = 4; // XXX Seem to fail when >4 on kaffe 0.9.0
|
|
|
|
public void run() {
|
|
if (! Thread.currentThread().isAlive() ) {
|
|
System.out.println("FAILED: isAlive() false in new thread!");
|
|
} else {
|
|
System.out.println("PASSED: isAlive() working in new thread");
|
|
}
|
|
while (0 <= count && count <= max) {
|
|
count ++;
|
|
}
|
|
}
|
|
|
|
public static void main (String args[]) {
|
|
try {
|
|
if (! Thread.currentThread().isAlive() ) {
|
|
System.out.println("FAILED: isAlive() false in initial thread!");
|
|
} else {
|
|
System.out.println("PASSED: isAlive() working in initial thread");
|
|
}
|
|
ThreadTest test = new ThreadTest();
|
|
|
|
Thread testThread = new Thread(test, threadName);
|
|
|
|
testThread.setDaemon(true);
|
|
testThread.start();
|
|
|
|
Thread.currentThread().sleep(3000);
|
|
|
|
if (count < max) {
|
|
System.out.println("FAILED: unable to run new thread");
|
|
} else {
|
|
System.out.println("PASSED: Theads worked");
|
|
}
|
|
System.exit(0);
|
|
} catch (Exception e) {
|
|
System.out.println("FAILED: "+e);
|
|
}
|
|
}
|
|
}
|