Browse Source

call nanosleep directly

usleep is a SUSv3 function.
TODO: nanosleep moved from SUSv3 Timers to SUSv4 Base

Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
Bernhard Reutner-Fischer 14 years ago
parent
commit
557e0c8dd7
2 changed files with 10 additions and 4 deletions
  1. 5 2
      test/pthread/ex6.c
  2. 5 2
      test/pthread/ex7.c

+ 5 - 2
test/pthread/ex6.c

@@ -2,7 +2,7 @@
 #include <stdio.h>
 #include <string.h>
 #include <pthread.h>
-#include <unistd.h>
+#include <time.h>
 
 static void *
 test_thread (void *v_param)
@@ -14,6 +14,9 @@ int
 main (void)
 {
   unsigned long count;
+  struct timespec ts;
+  ts.tv_sec = 0;
+  ts.tv_nsec = 10 * 1000;
 
   setvbuf (stdout, NULL, _IONBF, 0);
 
@@ -35,7 +38,7 @@ main (void)
 	}
       /* pthread_detach (thread); */
       pthread_join (thread, NULL);
-      usleep (10);
+      nanosleep (&ts, NULL);
     }
   return 0;
 }

+ 5 - 2
test/pthread/ex7.c

@@ -8,7 +8,7 @@
 #include <string.h>
 #include <pthread.h>
 #include <sys/time.h>
-#include <unistd.h>
+#include <time.h>
 
 /* Our event variable using a condition variable contruct. */
 typedef struct {
@@ -63,6 +63,9 @@ int
 main (void)
 {
   unsigned long count;
+  struct timespec ts;
+  ts.tv_sec = 0;
+  ts.tv_nsec = 10 * 1000;
 
   setvbuf (stdout, NULL, _IONBF, 0);
 
@@ -96,7 +99,7 @@ main (void)
 	  printf ("count = %lu\n", count);
       }
 
-      usleep (10);
+      nanosleep (&ts, NULL);
   }
 
   return 0;