| | #include "log.h" |
| |
|
| | #include <cstdlib> |
| | #include <thread> |
| |
|
| | int main() { |
| | const int n_thread = 8; |
| |
|
| | std::thread threads[n_thread]; |
| | for (int i = 0; i < n_thread; i++) { |
| | threads[i] = std::thread([i]() { |
| | const int n_msg = 1000; |
| |
|
| | for (int j = 0; j < n_msg; j++) { |
| | const int log_type = std::rand() % 4; |
| |
|
| | switch (log_type) { |
| | case 0: LOG_INF("Thread %d: %d\n", i, j); break; |
| | case 1: LOG_WRN("Thread %d: %d\n", i, j); break; |
| | case 2: LOG_ERR("Thread %d: %d\n", i, j); break; |
| | case 3: LOG_DBG("Thread %d: %d\n", i, j); break; |
| | default: |
| | break; |
| | } |
| |
|
| | if (rand () % 10 < 5) { |
| | common_log_set_timestamps(common_log_main(), rand() % 2); |
| | common_log_set_prefix (common_log_main(), rand() % 2); |
| | } |
| | } |
| | }); |
| | } |
| |
|
| | for (int i = 0; i < n_thread; i++) { |
| | threads[i].join(); |
| | } |
| |
|
| | return 0; |
| | } |
| |
|