藍森林首頁 | 返回主頁 | 本站地圖 | 站內搜索 | 聯繫信箱 |
 您目前的位置:首頁 > 自由軟件 > 技術交流 > 應用編程


    

藍森林 http://www.lslnet.com 2006年6月6日 10:18


如何定義一個遞歸互斥變量

本人在Linux上寫程序時遇到這樣一個問題:
我同時開了好幾個線程,這幾個線程需要同步,因此定義了一個互斥變量
  pthread_mutex_t  a_mutex = PTHREAD_MUTEX_INITIALIZER;
但是,幾個線程都鎖住這個互斥變量時,則會產生死鎖,因此定義了一個遞歸變量:
               pthread_mutex_t  a_mutex =
                    PTHREAD_RECURSIVE_MUTEX_INITIALIZER_NP;
但是編譯時則產生:變量沒有聲明的錯誤,我用的頭文件是:
     #include <stdio.h>;
     #include <pthread.h>;
     #include <stdlib.h>;

請教各位高手,我是不是還得要包括別的頭文件才能使用遞歸互斥變量啊!謝謝了!

如何定義一個遞歸互斥變量

應該是PTHREAD_MUTEX_RECURSIVE_NP吧?



Copyright © 1999-2000 LSLNET.COM. All rights reserved. 藍森林網站 版權所有。 E-mail : webmaster@lslnet.com