| 16 | BOOST_AUTO_TEST_SUITE(scheduler_tests) |
| 17 | |
| 18 | static void microTask(CScheduler& s, std::mutex& mutex, int& counter, int delta, std::chrono::system_clock::time_point rescheduleTime) |
| 19 | { |
| 20 | { |
| 21 | std::lock_guard<std::mutex> lock(mutex); |
| 22 | counter += delta; |
| 23 | } |
| 24 | std::chrono::system_clock::time_point noTime = std::chrono::system_clock::time_point::min(); |
| 25 | if (rescheduleTime != noTime) { |
| 26 | CScheduler::Function f = std::bind(µTask, std::ref(s), std::ref(mutex), std::ref(counter), -delta + 1, noTime); |
| 27 | s.schedule(f, rescheduleTime); |
| 28 | } |
| 29 | } |
| 30 | |
| 31 | BOOST_AUTO_TEST_CASE(manythreads) |
| 32 | { |