From d0aed2a7bfdad688de32a7c4d894590502e6bac4 Mon Sep 17 00:00:00 2001 From: bje Date: Sun, 4 Oct 1998 21:04:28 +0000 Subject: 1998-10-05 Ben Elliston * misc.c (pthread_once): Use the POSIX mutex primitives, not Win32. Remove irrelevant FIXME comment. * pthread.h (PTHREAD_ONCE_INIT): Define. * tests/once1.c: New file; test for pthread_once(). Passes. --- tests/once1.c | 35 +++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) create mode 100644 tests/once1.c (limited to 'tests') diff --git a/tests/once1.c b/tests/once1.c new file mode 100644 index 0000000..f4164ac --- /dev/null +++ b/tests/once1.c @@ -0,0 +1,35 @@ +#include +#include + +pthread_once_t once = PTHREAD_ONCE_INIT; + +void +myfunc(void) +{ + printf("only see this once\n"); +} + +void * +mythread(void * arg) +{ + int rc = pthread_once(&once, myfunc); + printf("returned %d\n", rc); + + return 0; +} + +int +main() +{ + int rc; + pthread_t t1, t2; + + rc = pthread_create(&t1, NULL, mythread, NULL); + printf("pthread_create returned %d\n", rc); + + rc = pthread_create(&t2, NULL, mythread, NULL); + printf("pthread_create returned %d\n", rc); + + Sleep(2000); + return 0; +} -- cgit v1.2.3