tests/pthread_cooperation: small improvements

This commit is contained in:
Alexandre Abadie 2017-10-29 11:50:13 +01:00
parent e87314fa1e
commit 633be9a87b

View File

@ -23,6 +23,8 @@
#define NUM_THREADS 12 #define NUM_THREADS 12
#define FACTORIAL_EXPECTED (479001600UL)
pthread_t ths[NUM_THREADS]; pthread_t ths[NUM_THREADS];
pthread_mutex_t mtx; pthread_mutex_t mtx;
@ -49,6 +51,7 @@ void *run(void *parameter)
int main(void) int main(void)
{ {
puts("START");
pthread_attr_t th_attr; pthread_attr_t th_attr;
pthread_attr_init(&th_attr); pthread_attr_init(&th_attr);
pthread_mutex_init(&mtx, NULL); pthread_mutex_init(&mtx, NULL);
@ -59,19 +62,21 @@ int main(void)
} }
for (int i = 0; i < NUM_THREADS; ++i) { for (int i = 0; i < NUM_THREADS; ++i) {
printf("join\n"); printf("join thread %d\n", (i + 1));
pthread_join(ths[i], NULL); pthread_join(ths[i], NULL);
} }
printf("Factorial: %d\n", storage); printf("Factorial: %d\n", storage);
if (storage != 479001600) {
puts("[!!!] Error, expected: 12!= 479001600.");
}
pthread_mutex_destroy(&mtx); pthread_mutex_destroy(&mtx);
pthread_attr_destroy(&th_attr); pthread_attr_destroy(&th_attr);
puts("finished"); if (storage == FACTORIAL_EXPECTED) {
puts("SUCCESS");
}
else {
puts("FAILURE: Error, expected: 12!= 479001600.");
}
return 0; return 0;
} }