c++ - pthreads 和 C++

标签 c++ pthreads

我正在使用 C++ 和 pthreads,到目前为止一切顺利。如果它是静态的,我可以访问一个类成员函数,我读过如果我将“this”作为参数传递给 pthread_create,我可以访问一个普通的类成员函数,因为 c++ 在后台执行此操作。但我的问题是我想给那个函数一个 int,我不知道如何用 pthread_create 做多个参数。

最佳答案

传递一个结构指针。

struct Arg {
  MyClass* _this;
  int      another_arg;
};

...

Arg* arg = new Arg;
arg->_this = this;
arg->another_arg = 12;
pthread_create(..., arg);
...
delete arg;

关于c++ - pthreads 和 C++,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2468113/

相关文章:

c++ - 为什么我的类不可默认构造?

c - 取消引用由 pthread_join 设置的指针时的段错误

c++ - 带有 SCHED_OTHER 的可移植 pthread_setschedparam

c++ - TCP 数据接收超时对我不起作用

java - 是否可以延迟 C++ 中 const 变量的初始化,例如 Java 的 "blank final"功能?

c++ - 如何使用与 MSVS 中相同的设置从 cmd 运行 cl.exe?

C++,为什么在修改新分配的对象后会出现访问冲突?

c - POSIX API 调用以列出进程中运行的所有 pthreads

gcc -pthread 和 -pthreads 之间的区别?

c - 线程堆栈指针