gpt4 book ai didi

linux - Linux 上的 pthread_mutex_timedlock

转载 作者:塔克拉玛干 更新时间:2023-11-03 00:33:55 26 4
gpt4 key购买 nike

我正在使用 pthreads 将窗口互斥体移植到 linux 并使用 gcc 进行编译。我在 Windows 上遇到了 WaitForSingleObject 函数。我正在尝试使用 pthread_mutex_timedlock 将互斥量锁定 x 秒,就像 WaitForSingleObject 一样。

我包含了 time.hpthread.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/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com