diff options
| author | rpj <rpj> | 2001-02-07 03:48:23 +0000 | 
|---|---|---|
| committer | rpj <rpj> | 2001-02-07 03:48:23 +0000 | 
| commit | 2f4a1905d1a8c424900a8615ec730f7637482525 (patch) | |
| tree | 9c35a724f9d033b81afb26c83612a2d88208a073 /tests | |
| parent | 9a59a1b4611cbd4b1fcf7549a97dc2cbe340b794 (diff) | |
Revamp read-write locks and update cond vars.
See ChangeLog.
Diffstat (limited to 'tests')
| -rw-r--r-- | tests/rwlock6.c | 110 | 
1 files changed, 55 insertions, 55 deletions
| diff --git a/tests/rwlock6.c b/tests/rwlock6.c index 7daccd7..8a75b83 100644 --- a/tests/rwlock6.c +++ b/tests/rwlock6.c @@ -1,65 +1,65 @@ -/*  - * rwlock6.c - * - * Check that writer locks have priority. - * - * Depends on API functions:  - *	pthread_rwlock_rdlock() - *	pthread_rwlock_wrlock() - *	pthread_rwlock_unlock() - */ +/* 
 + * rwlock6.c
 + *
 + * Check that writer locks have priority.
 + *
 + * Depends on API functions: 
 + *      pthread_rwlock_rdlock()
 + *      pthread_rwlock_wrlock()
 + *      pthread_rwlock_unlock()
 + */
 -#include "test.h" -  -static pthread_rwlock_t rwlock1 = PTHREAD_RWLOCK_INITIALIZER; +#include "test.h"
 + 
 +static pthread_rwlock_t rwlock1 = PTHREAD_RWLOCK_INITIALIZER;
 -static int bankAccount; +static int bankAccount;
 -void * wrfunc(void * arg) -{ -  assert(pthread_rwlock_wrlock(&rwlock1) == 0); -  Sleep(1000); -  bankAccount += 10; -  assert(pthread_rwlock_unlock(&rwlock1) == 0); +void * wrfunc(void * arg)
 +{
 +  assert(pthread_rwlock_wrlock(&rwlock1) == 0);
 +  Sleep(1000);
 +  bankAccount += 10;
 +  assert(pthread_rwlock_unlock(&rwlock1) == 0);
 -  return((void *) bankAccount);  -} -  -void * rdfunc(void * arg) -{ -  int ba = 0; +  return((void *) bankAccount); 
 +}
 + 
 +void * rdfunc(void * arg)
 +{
 +  int ba = 0;
 -  assert(pthread_rwlock_rdlock(&rwlock1) == 0); -  ba = bankAccount; -  assert(pthread_rwlock_unlock(&rwlock1) == 0); +  assert(pthread_rwlock_rdlock(&rwlock1) == 0);
 +  ba = bankAccount;
 +  assert(pthread_rwlock_unlock(&rwlock1) == 0);
 -  ba += 10; -  return((void *) ba);  -} -  -int -main() -{ -  pthread_t wrt1; -  pthread_t wrt2; -  pthread_t rdt; -  int wr1Result = 0; -  int wr2Result = 0; -  int rdResult = 0; +  ba += 10;
 +  return((void *) ba); 
 +}
 + 
 +int
 +main()
 +{
 +  pthread_t wrt1;
 +  pthread_t wrt2;
 +  pthread_t rdt;
 +  int wr1Result = 0;
 +  int wr2Result = 0;
 +  int rdResult = 0;
 -  assert(pthread_create(&wrt1, NULL, wrfunc, NULL) == 0); -  Sleep(200); -  assert(pthread_create(&rdt, NULL, rdfunc, NULL) == 0); -  Sleep(200); -  assert(pthread_create(&wrt2, NULL, wrfunc, NULL) == 0); +  assert(pthread_create(&wrt1, NULL, wrfunc, NULL) == 0);
 +  Sleep(200);
 +  assert(pthread_create(&rdt, NULL, rdfunc, NULL) == 0);
 +  Sleep(200);
 +  assert(pthread_create(&wrt2, NULL, wrfunc, NULL) == 0);
 -  assert(pthread_join(wrt1, (void **) &wr1Result) == 0); -  assert(pthread_join(wrt2, (void **) &wr2Result) == 0); -  assert(pthread_join(rdt, (void **) &rdResult) == 0); +  assert(pthread_join(wrt1, (void **) &wr1Result) == 0);
 +  assert(pthread_join(wrt2, (void **) &wr2Result) == 0);
 +  assert(pthread_join(rdt, (void **) &rdResult) == 0);
 -  assert(wr1Result == 10); -  assert(wr2Result == 20); -  assert(rdResult == 30); +  assert(wr1Result == 10);
 +  assert(wr2Result == 20);
 +  assert(rdResult == 20);
 -  return 0; -} +  return 0;
 +}
 | 
