Mercurial > hg > graal-jvmci-8
diff src/os/bsd/vm/os_bsd.cpp @ 14291:5944dba4badc
8028280: ParkEvent leak when running modified runThese which only loads classes
Summary: Use spin lock to manage ParkEvent and PlatformEvent free lists.
Reviewed-by: dholmes, fparain
author | dsimms |
---|---|
date | Fri, 24 Jan 2014 09:28:47 +0100 |
parents | c250880a6673 |
children | b59507f713e0 62c54fcc0a35 |
line wrap: on
line diff
--- a/src/os/bsd/vm/os_bsd.cpp Thu Jan 23 16:02:14 2014 -0500 +++ b/src/os/bsd/vm/os_bsd.cpp Fri Jan 24 09:28:47 2014 +0100 @@ -2636,9 +2636,21 @@ } } -int os::naked_sleep() { - // %% make the sleep time an integer flag. for now use 1 millisec. - return os::sleep(Thread::current(), 1, false); +void os::naked_short_sleep(jlong ms) { + struct timespec req; + + assert(ms < 1000, "Un-interruptable sleep, short time use only"); + req.tv_sec = 0; + if (ms > 0) { + req.tv_nsec = (ms % 1000) * 1000000; + } + else { + req.tv_nsec = 1; + } + + nanosleep(&req, NULL); + + return; } // Sleep forever; naked call to OS-specific sleep; use with CAUTION