summaryrefslogtreecommitdiff
path: root/tests/condvar2.c
diff options
context:
space:
mode:
authorrpj <rpj>2001-06-03 16:41:27 +0000
committerrpj <rpj>2001-06-03 16:41:27 +0000
commit5b826fe110d9cde198d2aae27e144ac635ad921f (patch)
tree7bc68cc31f521209cd0d9c78c55abaa56e8ff253 /tests/condvar2.c
parent860ecc4c24475dc3d3efe0adc981071f2aaf1299 (diff)
pthreads:
2001-06-03 Ross Johnson <rpj@setup1.ise.canberra.edu.au> Contributed by - Alexander Terekhov <TEREKHOV@de.ibm.com> - Louis Thomas <lthomas@arbitrade.com> * condvar.c (pthread_cond_init): Completely revamped. (pthread_cond_destroy): Likewise. (ptw32_cond_wait_cleanup): Likewise. (ptw32_cond_timedwait): Likewise. (ptw32_cond_unblock): New general signaling routine. (pthread_cond_signal): Now calls ptw32_cond_unblock. (pthread_cond_broadcast): Likewise. * implement.h (pthread_cond_t_): Revamped. * README.CV: New; explanation of the above changes. pthreads/tests: 2001-06-3 Ross Johnson <rpj@special.ise.canberra.edu.au> * condvar2_1.c: New test. * condvar3_1.c: New test. * condvar3_2.c: New test.
Diffstat (limited to 'tests/condvar2.c')
-rw-r--r--tests/condvar2.c21
1 files changed, 16 insertions, 5 deletions
diff --git a/tests/condvar2.c b/tests/condvar2.c
index beae323..369cef6 100644
--- a/tests/condvar2.c
+++ b/tests/condvar2.c
@@ -1,5 +1,5 @@
/*
- * File: condvar1.c
+ * File: condvar2.c
*
* Test Synopsis:
* - Test timed wait on a CV.
@@ -47,6 +47,8 @@
pthread_cond_t cv;
pthread_mutex_t mutex;
+#include "../implement.h"
+
int
main()
{
@@ -72,10 +74,19 @@ main()
assert(pthread_mutex_unlock(&mutex) == 0);
- assert(pthread_cond_destroy(&cv) == 0);
+ {
+ int result = pthread_cond_destroy(&cv);
+ if (result != 0)
+ {
+ fprintf(stderr, "Result = %s\n", error_string[result]);
+ fprintf(stderr, "\tWaitersBlocked = %ld\n", cv->nWaitersBlocked);
+ fprintf(stderr, "\tWaitersUnblocked = %ld\n", cv->nWaitersUnblocked);
+ fprintf(stderr, "\tWaitersGone = %ld\n", cv->nWaitersGone);
+ fprintf(stderr, "\tWaitersToUnblock = %ld\n", cv->nWaitersToUnblock);
+ fflush(stderr);
+ }
+ assert(result == 0);
+ }
return 0;
}
-
-
-