| 86 | } |
| 87 | |
| 88 | RingCheckerMulticore::RingCheckerMulticore() { |
| 89 | auto th_count = std::max<size_t>(2, 3 * std::thread::hardware_concurrency() / 4); |
| 90 | // we use more energy but have the same speed when using hyperthreading |
| 91 | // std::cout << "Starting multicore ring checker using " << th_count << "/" << std::thread::hardware_concurrency() |
| 92 | // << " cpus" << std::endl; |
| 93 | for (size_t i = 0; i != th_count; ++i) |
| 94 | threads.emplace_back(&RingCheckerMulticore::thread_run, this); |
| 95 | } |
| 96 | |
| 97 | RingCheckerMulticore::~RingCheckerMulticore() { |
| 98 | { |
nothing calls this directly
no outgoing calls
no test coverage detected