- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
我正在使用 pthreads 将窗口互斥体移植到 linux 并使用 gcc 进行编译。我在 Windows 上遇到了 WaitForSingleObject
函数。我正在尝试使用 pthread_mutex_timedlock
将互斥量锁定 x 秒,就像 WaitForSingleObject
一样。
我包含了 time.h
和 pthread.h
文件,但是当我尝试编译时,我得到了对 pthread_mutex_timedlock
的 undefined reference 错误.当我从 pthread_mutex_timedlock
中取出一个参数并尝试编译时,我得到了
too few arguments to function "pthread_mutex_timedlock"
我很困惑为什么会收到 undefined reference 错误。我的代码片段如下:
#include <pthread.h>
#include <time.h>
int dwWaitResult;
struct timespec timeout;
clock_gettime(CLOCK_REALTIME, &timeout);
timeout.tv_sec = 10;
dwWaitResult = pthread_mutex_timedlock(mutexArray[mutexIndex], &timeout);
最佳答案
undefined reference means that yo udo not link agains pthread lib; did you try adding -lpthread? @OznOg
OznOg 回答了我的问题。我只需要在编译时使用 -pthread 。谢谢!!
关于linux - Linux 上的 pthread_mutex_timedlock,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52879108/
操作系统:Linux 库:glibc 我有多个线程访问一个硬件,我通过使用互斥锁来防止争用。 该软件非常复杂,其可能出现的死锁可能是系统中由于递归调用取锁造成的。出于这个原因,我使用“pthread_
通常,如果一个任务 1 持有锁 A 想要获取锁 B,而另一个任务 2 已经获取了锁 B 并正在等待任务 1 持有的锁 A),这会导致死锁。 但是当涉及到 pthread_mutex_timedlock
我想保护一个函数免受多线程访问。为此,我使用了 pthread_mutex_t 互斥体。我尝试在函数的开头锁定它,然后执行该函数,然后再次释放它。如果互斥锁正在使用中,它应该最多等待 60 秒才能可用
不幸的是,cygwin GCC 4.5.3 pthread 库实现不支持 POSIX 标准函数 int pthread_mutex_timedlock(pthread_mutex_t* mutex,
我正在使用 pthreads 将窗口互斥体移植到 linux 并使用 gcc 进行编译。我在 Windows 上遇到了 WaitForSingleObject 函数。我正在尝试使用 pthread_m
就在最近,我依赖于 pthread_mutex_timedlock 的异步服务器代码似乎过早超时了。起初我以为这只是我的错误,但看到 linux 内核存在一些闰秒问题,看来我不是唯一的问题:https
设置: 我正在尝试在我的 32 位汇编语言程序中使用 pthreads 中的 pthread_mutex_timedlock 函数。代码如下所示: struct timespec .tv_sec
pthread_mutex_timedlock documentation说 abs_timeout 需要一个 CLOCK_REALTIME。但是,我们都知道对特定持续时间进行计时是不合适的(由于系统
我是一名优秀的程序员,十分优秀!