82得票9回答
pthreads互斥锁 vs 信号量

pthread库提供的信号量(semaphores)和互斥锁(mutex)有何区别?

82得票5回答
Pthreads与OpenMP的比较

我正在使用Linux系统用C语言创建一个多线程应用程序。 现在我不确定是应该使用POSIX线程API还是OpenMP API。 两种方式各有优缺点,请问怎样选择呢? 编辑: 请问这两种API都是创建内核级或用户级线程吗?

77得票3回答
pthread_cond_wait()和pthread_cond_signal()的理解

一般来说,pthread_cond_wait()和pthread_cond_signal()的调用方式如下: //thread 1: pthread_mutex_lock(&mutex); pthread_cond_wait(&cond, &mutex); do_so...

74得票10回答
如何在C语言中从pthread线程返回一个值?

我是C语言的新手,想尝试使用线程。我想使用 pthread_exit() 来从线程中返回某些值。 我的代码如下:#include <pthread.h> #include <stdio.h> void *myThread() { int ret = 42; ...

71得票4回答
抢占式线程与非抢占式线程

请有人解释一下抢占式线程模型和非抢占式线程模型的区别: 根据我的理解: 非抢占式线程模型:线程一旦启动,就不能被停止或转移控制权到其他线程,直到线程完成其任务。 抢占式线程模型:运行时允许在任何时候从一个线程中接管控制权并将其交给另一个线程。高优先级线程优先于低优先级线程。 请有人:...

69得票3回答
如何在pthread中提高线程优先级?

我正在Linux中使用pthread。我想通过设置参数来增加线程优先级。然而,我在网上找不到关于我可以设置的线程优先级范围或线程优先级描述的信息。 此外,我想了解相对线程优先级,因为我不希望将线程优先级设置得太高,导致操作系统停止运行。有人能帮我吗?

68得票5回答
如何设置特定pthread的CPU亲和性?

我想要指定一个特定 pthread 的 CPU 亲和性。到目前为止,我找到的所有参考资料都是关于设置进程(pid_t)的 CPU 亲和性,而不是线程(pthread_t)。我尝试了一些实验,传递 pthread_t,但如预期的那样失败了。我是在试图做一些不可能的事情吗?如果不是,请您给我一个指...

68得票5回答
我能在Windows中编译Unix的pthread.h吗?

如果我尝试编译一个程序,使用的是:#include <pthread.h> 在其中,我遇到了这个错误:pthread.h: No such file or directory 在Windows环境下是否可能编译通过? 我正在使用最新的MinGW和Vista。 我不想使用Micr...

67得票3回答
如何在Linux pthreads中设置线程名称?

有没有办法在 Linux 中设置线程的名称? 我的主要目的是在调试时更加方便,并且如果该名称通过例如 /proc/$PID/task/$TID/... 公开,那就更好了。

66得票2回答
分离式与可连接的 POSIX 线程

我一直在使用C语言中的pthread库创建和加入线程。 什么情况下应该一开始就将线程设置为分离状态?相对于可连接线程,它是否提供任何性能优势? 在默认情况下可连接线程上不执行pthread_join()是合法的吗?或者这样的线程是否应该在pthread_exit()前总是使用detach(...