GLib
外觀
原作者 | Shawn Amundson |
---|---|
開發者 | GNOME計劃 |
當前版本 |
|
源代碼庫 | |
編程語言 | C |
操作系統 | Linux、類Unix系統、OS X、Microsoft Windows |
平台 | 跨平台 |
語言 | 多語言 |
類型 | 庫 |
許可協議 | GNU寬通用公共許可證 |
網站 | wiki |
GLib是一個跨平台的、用C語言編寫的五個底層庫的集合,為GNOME所使用。
歷史
[編輯]GLib起初是GTK+的一部分,但到了GTK+第二版,開發者決定把跟圖形界面無關的代碼分開,這些代碼於是就組裝成了GLib。
因為GLib具有跨平台特性,所以用它編寫的程序可以無需進行大幅度修改就可以在其他程序上編譯和運行。[2]
功能
[編輯]GLib提供了多種高級的數據結構,如內存塊、雙向和單向鍊表、哈希表、動態字符串以及字符串工具(例如詞法分析器,字符串切分等)、動態數組、平衡二叉樹、n-叉樹、鍵值存儲、關係和元組,還有帶有緩存的內存管理。
Glib還實現了線程相關的函數、多線程編程以及相關的工具,例如原始變量訪問、互斥鎖、異步隊列、安全內存池、消息傳遞和日誌、鈎子函數和計時器,同時消息傳遞還包含了字節序轉換和IO channel。
組成
[編輯]GLib由五個庫組成:
參考文獻
[編輯]- ^ 2.82.2 · GNOME / GLib · GitLab. [2024年11月1日] (英語).
- ^ Krause, Andrew. Foundations of GTK+ Development. Expert's Voice in Open Source. Apress. 2007: 5 [3 April 2013]. ISBN 1-59059-793-1. (原始內容存檔於2016-08-11).
[GLib] provides a cross-platform interface that allows your code to be run on any of its supported operating systems with little to no rewriting of code!