1 #include "test/jemalloc_test.h"
2 
3 /*
4  * Sleep for approximately ns nanoseconds.  No lower *nor* upper bound on sleep
5  * time is guaranteed.
6  */
7 void
mq_nanosleep(unsigned ns)8 mq_nanosleep(unsigned ns)
9 {
10 	assert(ns <= 1000*1000*1000);
11 
12 #ifdef _WIN32
13 	Sleep(ns / 1000);
14 #else
15 	{
16 		struct timespec timeout;
17 
18 		if (ns < 1000*1000*1000) {
19 			timeout.tv_sec = 0;
20 			timeout.tv_nsec = ns;
21 		} else {
22 			timeout.tv_sec = 1;
23 			timeout.tv_nsec = 0;
24 		}
25 		nanosleep(&timeout, NULL);
26 	}
27 #endif
28 }
29