diff options
author | geoffk <geoffk@138bc75d-0d04-0410-961f-82ee72b054a4> | 2006-09-14 01:17:31 +0000 |
---|---|---|
committer | geoffk <geoffk@138bc75d-0d04-0410-961f-82ee72b054a4> | 2006-09-14 01:17:31 +0000 |
commit | 0bb92388895783dad3b13b8deb9d182bbedc5408 (patch) | |
tree | a5280d81d511353d5613e3482a10f15f1a24c4c1 /libjava/testsuite/libjava.lang | |
parent | 09fa572c45232c54bebd4f301df52f0112828ce4 (diff) | |
download | gcc-0bb92388895783dad3b13b8deb9d182bbedc5408.tar.gz |
* posix.cc (_Jv_platform_nanotime): Return nanoseconds, not
microseconds; use gettimeofday when available.
* posix-threads.cc (_Jv_CondWait): Improve accuracy and range of
timeout calculation.
* testsuite/libjava.lang/Thread_Sleep_2.java: New.
* testsuite/libjava.lang/Thread_Sleep_2.out: New.
* testsuite/libjava.lang/Thread_Sleep_2.xfail: New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@116941 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'libjava/testsuite/libjava.lang')
-rw-r--r-- | libjava/testsuite/libjava.lang/Thread_Sleep_2.java | 34 | ||||
-rw-r--r-- | libjava/testsuite/libjava.lang/Thread_Sleep_2.out | 1 | ||||
-rw-r--r-- | libjava/testsuite/libjava.lang/Thread_Sleep_2.xfail | 1 |
3 files changed, 36 insertions, 0 deletions
diff --git a/libjava/testsuite/libjava.lang/Thread_Sleep_2.java b/libjava/testsuite/libjava.lang/Thread_Sleep_2.java new file mode 100644 index 00000000000..37c0d3bb665 --- /dev/null +++ b/libjava/testsuite/libjava.lang/Thread_Sleep_2.java @@ -0,0 +1,34 @@ +// Test that Thread.sleep() is accurate +// and that nanoTime actually measures in nanoseconds. + +public class Thread_Sleep_2 +{ + public static void main(String args[]) + { + try + { + boolean ok = true; + for (int i = 0; i < 100; i++) + { + long start = System.nanoTime(); + Thread.sleep(10); + long end = System.nanoTime(); + if ((end - start) < 10000000) + { + System.out.print ("failed, iteration "); + System.out.print (i); + System.out.print (", time "); + System.out.print (end - start); + System.out.println ("ns"); + ok = false; + } + } + if (ok) + System.out.println ("ok"); + } + catch (InterruptedException x) + { + System.out.println("error: Thread interrupted."); + } + } +} diff --git a/libjava/testsuite/libjava.lang/Thread_Sleep_2.out b/libjava/testsuite/libjava.lang/Thread_Sleep_2.out new file mode 100644 index 00000000000..9766475a418 --- /dev/null +++ b/libjava/testsuite/libjava.lang/Thread_Sleep_2.out @@ -0,0 +1 @@ +ok diff --git a/libjava/testsuite/libjava.lang/Thread_Sleep_2.xfail b/libjava/testsuite/libjava.lang/Thread_Sleep_2.xfail new file mode 100644 index 00000000000..3f95317a450 --- /dev/null +++ b/libjava/testsuite/libjava.lang/Thread_Sleep_2.xfail @@ -0,0 +1 @@ +need-threads |