Changeset cb01e1e in mainline for kernel/test/thread/thread1.c
- Timestamp:
- 2009-04-04T00:26:27Z (15 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/thread/thread1.c
r171f9a1 rcb01e1e 37 37 #include <arch.h> 38 38 39 #define THREADS 539 #define THREADS 5 40 40 41 41 static atomic_t finish; 42 42 static atomic_t threads_finished; 43 static bool sh_quiet;44 43 45 44 static void threadtest(void *data) 46 45 { 47 thread_detach(THREAD); 48 46 thread_detach(THREAD); 47 49 48 while (atomic_get(&finish)) { 50 if (!sh_quiet) 51 printf("%" PRIu64 " ", THREAD->tid); 49 TPRINTF("%" PRIu64 " ", THREAD->tid); 52 50 thread_usleep(100000); 53 51 } … … 55 53 } 56 54 57 char * test_thread1(bool quiet)55 char *test_thread1(void) 58 56 { 59 57 unsigned int i, total = 0; 60 sh_quiet = quiet;61 58 62 59 atomic_set(&finish, 1); 63 60 atomic_set(&threads_finished, 0); 64 61 65 62 for (i = 0; i < THREADS; i++) { 66 63 thread_t *t; 67 64 if (!(t = thread_create(threadtest, NULL, TASK, 0, "threadtest", false))) { 68 if (!quiet) 69 printf("Could not create thread %d\n", i); 65 TPRINTF("Could not create thread %d\n", i); 70 66 break; 71 67 } … … 74 70 } 75 71 76 if (!quiet) 77 printf("Running threads for 10 seconds...\n"); 72 TPRINTF("Running threads for 10 seconds...\n"); 78 73 thread_sleep(10); 79 74 80 75 atomic_set(&finish, 0); 81 76 while (atomic_get(&threads_finished) < ((long) total)) { 82 if (!quiet) 83 printf("Threads left: %d\n", total - atomic_get(&threads_finished)); 77 TPRINTF("Threads left: %d\n", total - atomic_get(&threads_finished)); 84 78 thread_sleep(1); 85 79 }
Note:
See TracChangeset
for help on using the changeset viewer.