| 26 | std::atomic<int> g_task_b_counter{0}; |
| 27 | |
| 28 | void thread_func_a(void* arg) { |
| 29 | uint64_t id = (uint64_t)arg; |
| 30 | for (int i = 0; i < 5; ++i) { |
| 31 | klog::Info("Thread A: running, arg={}, iter={}", id, i); |
| 32 | g_task_a_counter++; |
| 33 | (void)sys_sleep(50); |
| 34 | } |
| 35 | klog::Info("Thread A: exit"); |
| 36 | sys_exit(0); |
| 37 | } |
| 38 | |
| 39 | void thread_func_b(void* arg) { |
| 40 | uint64_t id = (uint64_t)arg; |