Changeset cb01e1e in mainline for kernel/test/synch/rwlock2.c
- Timestamp:
- 2009-04-04T00:26:27Z (16 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- a85aebd
- Parents:
- 171f9a1
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
kernel/test/synch/rwlock2.c
r171f9a1 rcb01e1e 35 35 #include <synch/rwlock.h> 36 36 37 #define READERS 38 #define WRITERS 37 #define READERS 50 38 #define WRITERS 50 39 39 40 40 static rwlock_t rwlock; 41 static bool sh_quiet;42 41 43 42 static void writer(void *arg) 44 43 { 45 if (!sh_quiet) 46 printf("Trying to lock rwlock for writing....\n"); 44 TPRINTF("Trying to lock rwlock for writing....\n"); 47 45 48 46 rwlock_write_lock(&rwlock); 49 47 rwlock_write_unlock(&rwlock); 50 48 51 if (!sh_quiet) 52 printf("Trying to lock rwlock for reading....\n"); 49 TPRINTF("Trying to lock rwlock for reading....\n"); 53 50 54 51 rwlock_read_lock(&rwlock); 55 rwlock_read_unlock(&rwlock); 52 rwlock_read_unlock(&rwlock); 56 53 } 57 54 58 char * test_rwlock2(bool quiet)55 char *test_rwlock2(void) 59 56 { 60 57 thread_t *thrd; 61 sh_quiet = quiet;62 58 63 59 rwlock_initialize(&rwlock); 64 60 65 61 rwlock_read_lock(&rwlock); 66 62 rwlock_read_lock(&rwlock); 67 63 rwlock_read_lock(&rwlock); 68 rwlock_read_lock(&rwlock); 64 rwlock_read_lock(&rwlock); 69 65 70 66 thrd = thread_create(writer, NULL, TASK, 0, "writer", false); … … 73 69 else 74 70 return "Could not create thread"; 75 71 76 72 thread_sleep(1); 77 73
Note:
See TracChangeset
for help on using the changeset viewer.