diff options
Diffstat (limited to 'tests')
| -rw-r--r-- | tests/exit2.c | 32 | 
1 files changed, 32 insertions, 0 deletions
| diff --git a/tests/exit2.c b/tests/exit2.c new file mode 100644 index 0000000..40f218b --- /dev/null +++ b/tests/exit2.c @@ -0,0 +1,32 @@ +/* + * Test for pthread_exit(). + * + * Depends on API functions: pthread_create(). + */ + +#include <pthread.h> +#include <stdio.h> + +void * +func(void * arg) +{ +	printf("Hello world\n"); +	pthread_exit(arg); +} + +int +main(int argc, char * argv[]) +{ +	pthread_t id[2]; +	int i; + +	/* Create a few threads, make them say hello and then exit. */ + +	for (i = 0; i < 4; i++) +	{ +		pthread_create(&id, NULL, entry, (void *) i); +	} + +	/* Semantics should be the same as POSIX. Wait for the workers. */ +	pthread_exit((void *) 0); +} | 
