Я портирую мьютексы окон на linux, используя pthreads и компилирую с помощью gcc.Я наткнулся на WaitForSingleObject
функцию на окнах.Я пытаюсь использовать pthread_mutex_timedlock
для блокировки мьютекса на x секунд, как и WaitForSingleObject
.
Я включил файлы time.h
и pthread.h
, но когда я пытаюсь скомпилировать, я получаюнеопределенная ссылка на ошибку pthread_mutex_timedlock
.Когда я беру аргумент из pthread_mutex_timedlock
и пытаюсь скомпилировать, я получаю
слишком мало аргументов для функции "pthread_mutex_timedlock"
Я не понимаю, почему яполучаю неопределенную ошибку ссылки.Ниже приведен фрагмент моего кода:
#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);