2014-01-16 23 views
0

使用api getpwnam_r()檢索用戶信息時,此api在內部調用任務庫(libvas.so.2)。在多線程環境中,我的程序轉儲核心。 Quest庫是否是線程安全的?Quest庫(Quest身份驗證服務)是否安全?

+0

你可以告訴我們關於任務庫的更多信息,因爲谷歌對它和「libvas.so.2」都沒有什麼意義。 – nos

+0

您可以使用此參考瞭解更多信息:http://technet.microsoft.com/en-us/library/bb463156.aspx – Cyclops

回答

0

根據this link to IBM's documentationgetpwnam_r()是線程安全的,雖然我不能告訴你它的實現是否使用Quest庫。

您是否檢查了核心轉儲,並確定該問題與此函數的線程安全性有關?您可以嘗試小心地將這個函數取出並在多線程環境中運行,以檢查是否導致問題。

+1

我運行了一個簡單的實用程序,它可以在多個線程中的多個位置檢索用戶的用戶標識,而每分鐘有併發請求到Quest庫,它會轉儲核心。 我做了一些我自己的研究,並藉助此引用:http://technet.microsoft.com/en-us/library/bb463156.aspx。我非常確定getpwnam_r是線程安全的,因爲我在不使用Quest身份驗證的環境中調用此api,並且它沒有轉儲核心,但它在具有Quest VAS庫的環境中進行身份驗證。所以,現在我確定Quest的VAS庫不是線程安全的。 – Cyclops