1
這是一個簡單的代碼,我已經在eclipse中的Windows 7操作系統上學習了多線程編程。未檢測到多線程庫
pthread_mutex_t double_release_001_glb_mutex_;
pthread_mutex_t * double_release_001_glb_mutex = & double_release_001_glb_mutex_;
void double_release_001_glb_mutex_lock() {}
void double_release_001_glb_mutex_unlock() {}
int double_release_001_glb_data = 0;
void * double_release_001_tsk_001 (void * pram)
{
pthread_mutex_lock (double_release_001_glb_mutex);
double_release_001_glb_data = (double_release_001_glb_data% 100) + 1;
pthread_mutex_unlock (double_release_001_glb_mutex);
return NULL;
}
void double_release_001()
{
pthread_t tid1;
pthread_mutex_init (double_release_001_glb_mutex, NULL);
pthread_create (& tid1, NULL, double_release_001_tsk_001, NULL);
pthread_join (tid1, NULL);
pthread_mutex_destroy (double_release_001_glb_mutex);
}
void double_release_001_tskentry_001()
{
while (1)
{
if (rand())
{
double_release_001_tsk_001 (NULL);
}
}
}
但是當我建立它,我得到一個錯誤說
Description Resource Path Location Type
undefined reference to `_imp__pthread_create'
undefined reference to `_imp__pthread_create'
undefined reference to `_imp__pthread_create'
undefined reference to `_imp__pthread_create'
我已經包括pthread.h
。有人能幫助我嗎?
鏈接器說它無法找到'pthread_create'。對於gcc,你可以用'-lpthread' ...鏈接它,相當於windows版本的pthreads。 –
您是否明確指定了鏈接器中的庫? – SparKot
C/C++ - >設置 - >工具設置 - >(MinGW)鏈接器 - >庫 – SparKot