c++ std::make_unique<std::thread>(runTask);runTask函数带参数
时间: 2024-11-15 20:31:24 浏览: 4
C++11 std::shared_ptr总结与使用示例代码详解
在C++中,`std::make_unique<std::thread>` 是一个工厂函数,用于创建 `std::thread` 对象。当你看到这样的表达式 `std::make_unique<std::thread>(runTask)`,它意味着你会创建一个新的线程,并将 `runTask` 函数作为线程的入口点(即线程启动时要执行的任务)。`runTask` 函数需要接收一个或多个参数,这取决于 `runTask` 的具体定义。
例如,如果你的 `runTask` 定义如下:
```cpp
void runTask(int param1, const std::string& param2) {
// 执行任务,参数param1和param2在这里会被使用
}
```
那么你需要传递这两个参数给 `make_unique`,像这样:
```cpp
auto thread = std::make_unique<std::thread>(runTask, someValue, "exampleString");
```
这里,`someValue` 和 `"exampleString"` 将作为 `runTask` 的参数。
阅读全文