aboutsummaryrefslogtreecommitdiff
path: root/pthreads/tests/rwlock6.c
diff options
context:
space:
mode:
Diffstat (limited to 'pthreads/tests/rwlock6.c')
-rw-r--r--pthreads/tests/rwlock6.c28
1 files changed, 14 insertions, 14 deletions
diff --git a/pthreads/tests/rwlock6.c b/pthreads/tests/rwlock6.c
index 22d10db42..f667ce5ce 100644
--- a/pthreads/tests/rwlock6.c
+++ b/pthreads/tests/rwlock6.c
@@ -52,12 +52,12 @@ void * wrfunc(void * arg)
int ba;
assert(pthread_rwlock_wrlock(&rwlock1) == 0);
- Sleep(2000);
+ Sleep(200);
bankAccount += 10;
ba = bankAccount;
assert(pthread_rwlock_unlock(&rwlock1) == 0);
- return ((void *) ba);
+ return ((void *)(size_t)ba);
}
void * rdfunc(void * arg)
@@ -68,7 +68,7 @@ void * rdfunc(void * arg)
ba = bankAccount;
assert(pthread_rwlock_unlock(&rwlock1) == 0);
- return ((void *) ba);
+ return ((void *)(size_t)ba);
}
int
@@ -77,25 +77,25 @@ main()
pthread_t wrt1;
pthread_t wrt2;
pthread_t rdt;
- int wr1Result = 0;
- int wr2Result = 0;
- int rdResult = 0;
+ void* wr1Result = (void*)0;
+ void* wr2Result = (void*)0;
+ void* rdResult = (void*)0;
bankAccount = 0;
assert(pthread_create(&wrt1, NULL, wrfunc, NULL) == 0);
- Sleep(500);
+ Sleep(50);
assert(pthread_create(&rdt, NULL, rdfunc, NULL) == 0);
- Sleep(500);
+ Sleep(50);
assert(pthread_create(&wrt2, NULL, wrfunc, NULL) == 0);
- assert(pthread_join(wrt1, (void **) &wr1Result) == 0);
- assert(pthread_join(rdt, (void **) &rdResult) == 0);
- assert(pthread_join(wrt2, (void **) &wr2Result) == 0);
+ assert(pthread_join(wrt1, &wr1Result) == 0);
+ assert(pthread_join(rdt, &rdResult) == 0);
+ assert(pthread_join(wrt2, &wr2Result) == 0);
- assert(wr1Result == 10);
- assert(rdResult == 10);
- assert(wr2Result == 20);
+ assert((int)(size_t)wr1Result == 10);
+ assert((int)(size_t)rdResult == 10);
+ assert((int)(size_t)wr2Result == 20);
return 0;
}