Mercurial > hg > graal-jvmci-8
comparison 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 |
comparison
equal
deleted
inserted
replaced
14290:d050fbf914d8 | 14291:5944dba4badc |
---|---|
2634 } | 2634 } |
2635 return OS_OK ; | 2635 return OS_OK ; |
2636 } | 2636 } |
2637 } | 2637 } |
2638 | 2638 |
2639 int os::naked_sleep() { | 2639 void os::naked_short_sleep(jlong ms) { |
2640 // %% make the sleep time an integer flag. for now use 1 millisec. | 2640 struct timespec req; |
2641 return os::sleep(Thread::current(), 1, false); | 2641 |
2642 assert(ms < 1000, "Un-interruptable sleep, short time use only"); | |
2643 req.tv_sec = 0; | |
2644 if (ms > 0) { | |
2645 req.tv_nsec = (ms % 1000) * 1000000; | |
2646 } | |
2647 else { | |
2648 req.tv_nsec = 1; | |
2649 } | |
2650 | |
2651 nanosleep(&req, NULL); | |
2652 | |
2653 return; | |
2642 } | 2654 } |
2643 | 2655 |
2644 // Sleep forever; naked call to OS-specific sleep; use with CAUTION | 2656 // Sleep forever; naked call to OS-specific sleep; use with CAUTION |
2645 void os::infinite_sleep() { | 2657 void os::infinite_sleep() { |
2646 while (true) { // sleep forever ... | 2658 while (true) { // sleep forever ... |