diff options
author | Geoffrey Keating <geoffk@apple.com> | 2006-09-14 01:17:31 +0000 |
---|---|---|
committer | Geoffrey Keating <geoffk@gcc.gnu.org> | 2006-09-14 01:17:31 +0000 |
commit | 06fcf75439fbafae348fa33a0630f7bd83a835aa (patch) | |
tree | a5280d81d511353d5613e3482a10f15f1a24c4c1 /libjava/testsuite/libjava.lang/Thread_Sleep_2.java | |
parent | f5efb27f743ce6bab0fe4f33a9573313e24dacdb (diff) | |
download | gcc-06fcf75439fbafae348fa33a0630f7bd83a835aa.zip gcc-06fcf75439fbafae348fa33a0630f7bd83a835aa.tar.gz gcc-06fcf75439fbafae348fa33a0630f7bd83a835aa.tar.bz2 |
posix.cc (_Jv_platform_nanotime): Return nanoseconds, not microseconds; use gettimeofday when available.
* 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.
From-SVN: r116941
Diffstat (limited to 'libjava/testsuite/libjava.lang/Thread_Sleep_2.java')
-rw-r--r-- | libjava/testsuite/libjava.lang/Thread_Sleep_2.java | 34 |
1 files changed, 34 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 0000000..37c0d3b --- /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."); + } + } +} |