538得票16回答
Linux中对pthread_create的引用未定义。

我从 https://computing.llnl.gov/tutorials/pthreads/ 网站上找到了下面这个演示。 #include <pthread.h> #include <stdio.h> #define NUM_THREADS 5 voi...

395得票7回答
死锁和活锁有什么区别?

请用代码举例解释死锁和活锁之间的区别。

262得票4回答
CMake和libpthread

我正在运行 RHEL 5.1 操作系统,并且使用 gcc 编译器。 请问如何让 cmake 在编译和链接时添加 -pthread 选项?

207得票10回答
为什么pthread的条件变量函数需要一个互斥锁?

我正在阅读有关pthread.h的资料;与条件变量相关的函数(例如pthread_cond_wait(3))需要作为参数的互斥锁。为什么?据我所知,我将只是创建一个互斥锁来作为那个参数使用?那个互斥锁应该做什么? 为什么?因为条件变量在等待和信号操作期间需要互斥锁来保护数据结构。当线程在等待...

187得票5回答
C++11标准线程与POSIX线程比较

在实践中,我应该选择哪一个?除了 std::thread 是一个类之外,它们的技术差异是什么?

181得票5回答
仍可访问的内存泄漏被Valgrind检测到。

这个区块中提到的所有函数都是库函数。我该如何纠正这个内存泄漏问题? 它被列在“仍可达”类别下。(还有4个类似但大小不同的类别) 630 bytes in 1 blocks are still reachable in loss record 5 of 5 at 0x4004F1B...

180得票6回答
为什么pthread_cond_wait会出现虚假唤醒?

引用手册: 当使用条件变量时,每个条件等待都会涉及与共享变量相关联的布尔谓词,如果线程应该继续,则该谓词为真。可能发生从pthread_cond_timedwait()或pthread_cond_wait()函数的虚假唤醒。由于从pthread_cond_timedwait()或pth...

180得票4回答
mingw-w64线程:posix vs win32

我正在Windows上安装mingw-w64,有两个选项:win32 threads和posix threads。我知道win32 threads和pthreads之间的区别,但我不明白这两个选项之间的区别。我怀疑如果我选择posix threads,则无法调用像CreateThread这样的...

169得票2回答
编译时使用-pthread标志的意义

在许多多线程的C和C++项目中,我看到在编译和链接阶段都使用了-pthread标志,而其他一些则根本不使用它,只是在链接阶段传递-lpthread。 没有使用-pthread标志进行编译和链接是否存在任何危险?也就是说,-pthread实际上是做什么的?我主要关心Linux平台。

156得票3回答
编译时-pthread和-lpthread的区别

gcc -pthread和gcc -lpthread在编译多线程程序时有什么区别?