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 ...