void io_looper::start(service_node* node, int worker_count) { create_completion_queue(); for (int i = 0; i < worker_count; i++) { std::thread* thr = new std::thread([this, node, i]() { task::set_tls_dsn_context(node, nullptr, nullptr); const char* name = node ? ::dsn::tools::get_service_node_name(node) : "glb"; char buffer[128]; sprintf(buffer, "%s.io-loop.%d", name, i); task_worker::set_name(buffer); this->loop_worker(); }); _workers.push_back(thr); } }
void io_looper_task_queue::start(service_node* node, int worker_count) { create_completion_queue(); }