2014-09-01 37 views
1

我正在查看某人的代碼(也許是你的:D),其中有一個叫做FreeLibrary()的函數。是FreeLibrary()在linux上工作嗎?

我想知道這個功能是否也適用於Linux。其實,我試圖Google搜索它,但只有一些與Windows操作系統相關的頁面。

如果這個函數不適用於linux,那麼linux的等效函數是什麼?

+0

我不知道你的「更新」是什麼意思。該代碼根本不應該編譯。我希望g ++首先會抱怨關於closeDL()被重新定義,即使g ++沒有抱怨未知符號「HMODULE」。 – 2014-09-01 01:31:55

+0

嗯......其實我明白我沒有看到balises'#ifdef _win32'所以從來不知道,我會刪除我的更新 – 2014-09-01 01:49:14

回答

1

FreeLibrary則的Windows功能description

釋放加載的動態鏈接庫(DLL)模塊,並在必要時減少其引用計數。當引用計數達到零時,模塊將從調用進程的地址空間卸載,並且句柄不再有效。

在Linux dlclosefunction非常相似

函數dlclose()遞減的動態庫句柄句柄引用計數。如果引用計數下降到零,並且沒有其他加載的庫使用它中的符號,則動態庫將被卸載。

網上有很多關於如何使用Linux動態庫的例子,例如this one

+0

謝謝你的參與! – 2014-09-01 01:58:53

+0

我剛剛讀完整個頁面(最後一個網址)。這非常有啓發性。你值得+1 – 2014-09-01 14:43:32

相關問題