diff options
author | Tom Tromey <tromey@redhat.com> | 2002-12-31 17:43:47 +0000 |
---|---|---|
committer | Tom Tromey <tromey@gcc.gnu.org> | 2002-12-31 17:43:47 +0000 |
commit | 35a94bdca88f0afa5f6922afbf8d17f5ff908466 (patch) | |
tree | 7796256b482af303f3dd8700910237614d8d6601 /libjava/include/win32.h | |
parent | 731e8b3886f14b9abc61d0e0745cc4c02bc5e481 (diff) |
re PR libgcj/8997 (spin() calls Thread.sleep)
2002-12-31 Tom Tromey <tromey@redhat.com>
Ranjit Mathew <rmathew@hotmail.com>
Fix for PR libgcj/8997:
* java/lang/natObject.cc (spin): Use _Jv_platform_usleep.
Include platform.h.
* include/posix.h (_Jv_platform_usleep): New function.
* include/win32.h (_Jv_platform_usleep): New function.
Co-Authored-By: Ranjit Mathew <rmathew@hotmail.com>
From-SVN: r60700
Diffstat (limited to 'libjava/include/win32.h')
-rw-r--r-- | libjava/include/win32.h | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/libjava/include/win32.h b/libjava/include/win32.h index d4c0ab6c18d..8ba6ef2053c 100644 --- a/libjava/include/win32.h +++ b/libjava/include/win32.h @@ -48,6 +48,19 @@ _Jv_platform_close_on_exec (jint) // Ignore. } +/* Suspends the execution of the current thread for the specified + number of microseconds. Tries to emulate the behaviour of usleep() + on UNIX and provides a granularity of 1 millisecond. */ +inline void +_Jv_platform_usleep (unsigned long usecs) +{ + if (usecs > 0UL) + { + unsigned long millis = ((usecs + 999UL) / 1000UL); + Sleep (millis); + } +} + #ifndef DISABLE_JAVA_NET static inline int |