diff options
Diffstat (limited to 'testing/embedding/thread2-test.c')
-rw-r--r-- | testing/embedding/thread2-test.c | 57 |
1 files changed, 0 insertions, 57 deletions
diff --git a/testing/embedding/thread2-test.c b/testing/embedding/thread2-test.c deleted file mode 100644 index 62f5ec8..0000000 --- a/testing/embedding/thread2-test.c +++ /dev/null @@ -1,57 +0,0 @@ -#include <stdio.h> -#include <assert.h> -#include "thread-test.h" - -extern int add1(int, int); -extern int add2(int, int, int); - -static sem_t done; - - -static void *start_routine_1(void *arg) -{ - int x, status; - x = add1(40, 2); - assert(x == 42); - - status = sem_post(&done); - assert(status == 0); - - return arg; -} - -static void *start_routine_2(void *arg) -{ - int x, status; -#ifdef T2TEST_AGAIN_ADD1 - add1(-1, -1); -#endif - x = add2(1000, 200, 30); - assert(x == 1230); - - status = sem_post(&done); - assert(status == 0); - - return arg; -} - -int main(void) -{ - pthread_t th; - int i, status = sem_init(&done, 0, 0); - assert(status == 0); - - printf("starting\n"); - fflush(stdout); - status = pthread_create(&th, NULL, start_routine_1, NULL); - assert(status == 0); - status = pthread_create(&th, NULL, start_routine_2, NULL); - assert(status == 0); - - for (i = 0; i < 2; i++) { - status = sem_wait(&done); - assert(status == 0); - } - printf("done\n"); - return 0; -} |