pthread创建线程c++
时间: 2023-08-14 18:24:30 浏览: 85
Linux进程控制——线程创建pthread_create()
5星 · 资源好评率100%
在 C++ 中,我们可以使用 pthread 库来创建线程。下面是一个简单的例子:
```c++
#include <pthread.h>
#include <iostream>
void* thread_func(void* arg) {
std::cout << "Hello, world!" << std::endl;
return NULL;
}
int main() {
pthread_t tid;
int ret = pthread_create(&tid, NULL, thread_func, NULL);
if (ret != 0) {
std::cerr << "Failed to create thread!" << std::endl;
return -1;
}
pthread_join(tid, NULL);
return 0;
}
```
在这个例子中,我们定义了一个函数 `thread_func`,它会在新创建的线程中执行。我们使用 `pthread_create` 函数来创建一个新的线程,并将 `thread_func` 函数作为新线程的入口点。`pthread_create` 函数会返回一个线程 ID,我们可以用它来管理该线程。
在主函数中,我们使用 `pthread_join` 函数来等待新线程结束,这样我们才能保证程序在新线程执行完毕后再退出。注意,`pthread_join` 函数的第二个参数是一个指向 `void*` 类型的指针,它用来接收线程的返回值。在这个例子中,我们并没有在 `thread_func` 函数中返回任何值,所以这个参数可以传入 `NULL`。
阅读全文