diff options
author | tromey <tromey@138bc75d-0d04-0410-961f-82ee72b054a4> | 2005-07-16 00:30:23 +0000 |
---|---|---|
committer | tromey <tromey@138bc75d-0d04-0410-961f-82ee72b054a4> | 2005-07-16 00:30:23 +0000 |
commit | c8875fb97fc03779a5bba09872227b1d08e5d52a (patch) | |
tree | a0b991cf5866ae1d616639b906ac001811d74508 /libjava/classpath/testsuite/java.lang/SyncronizedTest.java | |
parent | c40c1730800ed292b6db39a83d592476fa59623c (diff) | |
download | gcc-c8875fb97fc03779a5bba09872227b1d08e5d52a.tar.gz |
Initial revision
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@102074 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'libjava/classpath/testsuite/java.lang/SyncronizedTest.java')
-rw-r--r-- | libjava/classpath/testsuite/java.lang/SyncronizedTest.java | 59 |
1 files changed, 59 insertions, 0 deletions
diff --git a/libjava/classpath/testsuite/java.lang/SyncronizedTest.java b/libjava/classpath/testsuite/java.lang/SyncronizedTest.java new file mode 100644 index 00000000000..61115efaaca --- /dev/null +++ b/libjava/classpath/testsuite/java.lang/SyncronizedTest.java @@ -0,0 +1,59 @@ +public class SyncronizedTest + implements Runnable +{ + public static int count = 0; + String _name; + + public SyncronizedTest(String name) + { + _name = name; + } + + public void run() + { + if (_name.equals("timer")) { + try { + Thread.sleep(10000); + } catch (InterruptedException e){} + System.out.println("FAILED: timer triggered"); + System.exit(1); + } + try { + count++; + + synchronized(this) { + notifyAll(); + } + } catch (Exception e) { + System.out.println("FAILED: receiver: " + e); + System.exit(1); + } + } + public static void main(String args[]) + { + try { + SyncronizedTest tester = new SyncronizedTest("tester"); + Thread tester_thread = new Thread(tester); + + SyncronizedTest timer = new SyncronizedTest("timer"); + Thread timer_thread = new Thread(timer); + timer_thread.start(); + + synchronized(tester) { + tester_thread.start(); + tester.wait(); + } + + if (0 == count) + throw new Exception("Thread did not run."); + + tester_thread.join(); + + System.out.println("PASSED: count="+count); + System.exit(0); + } catch (Exception e) { + System.out.println("FAILED: " + e); + System.exit(1); + } + } +} |