equal
deleted
inserted
replaced
2600 |
2600 |
2601 size_t os::read_at(int fd, void *buf, unsigned int nBytes, jlong offset) { |
2601 size_t os::read_at(int fd, void *buf, unsigned int nBytes, jlong offset) { |
2602 return ::pread(fd, buf, nBytes, offset); |
2602 return ::pread(fd, buf, nBytes, offset); |
2603 } |
2603 } |
2604 |
2604 |
2605 void os::naked_short_sleep(jlong ms) { |
|
2606 struct timespec req; |
|
2607 |
|
2608 assert(ms < 1000, "Un-interruptable sleep, short time use only"); |
|
2609 req.tv_sec = 0; |
|
2610 if (ms > 0) { |
|
2611 req.tv_nsec = (ms % 1000) * 1000000; |
|
2612 } |
|
2613 else { |
|
2614 req.tv_nsec = 1; |
|
2615 } |
|
2616 |
|
2617 nanosleep(&req, NULL); |
|
2618 |
|
2619 return; |
|
2620 } |
|
2621 |
|
2622 // Sleep forever; naked call to OS-specific sleep; use with CAUTION |
2605 // Sleep forever; naked call to OS-specific sleep; use with CAUTION |
2623 void os::infinite_sleep() { |
2606 void os::infinite_sleep() { |
2624 while (true) { // sleep forever ... |
2607 while (true) { // sleep forever ... |
2625 ::sleep(100); // ... 100 seconds at a time |
2608 ::sleep(100); // ... 100 seconds at a time |
2626 } |
2609 } |