如何将类函数加到线程内 C++
要将类函数添加到线程内,可以使用以下步骤:
1.定义一个类,其中包含要在线程中运行的函数。
2.创建一个线程对象和一个函数指针。
3.将类函数指针分配给函数指针。
4.使用线程对象的构造函数,将函数指针作为参数来创建一个新的线程。
5.在需要时启动线程。
以下是示例代码:
#include <iostream>
#include <thread>
class MyClass {
public:
void myFunction() {
std::cout << "MyClass::myFunction() running in thread " << std::this_thread::get_id() << std::endl;
}
};
int main() {
MyClass myObject;
std::thread myThread(&MyClass::myFunction, &myObject);
std::cout << "Main thread " << std::this_thread::get_id() << " running" << std::endl;
myThread.join();
return 0;
}
在此示例中,我们定义了一个名为MyClass的类,并在其中定义了一个名为myFunction的函数。要在线程中运行此函数,我们创建了一个名为myThread的线程对象,并将&MyClass::myFunction分配给线程的构造函数。我们还将&myObject传递给线程对象的构造函数,以指定myFunction应该在哪个对象上调用。最后,我们启动线程并等待它完成
原文地址: https://www.cveoy.top/t/topic/fnRt 著作权归作者所有。请勿转载和采集!