本條目存在以下問題,請協助改善本條目或在討論頁針對議題發表看法。 此條目需要編修,以確保文法、用詞、语气格式標點等使用恰当。 (2020年8月28日)請按照校對指引,幫助编辑這個條目。(幫助討論) 此條目需要补充更多来源。 (2020年8月28日)请协助補充多方面可靠来源改善这篇条目无法查证的内容可能會因為异议提出而被移除。致使用者:请搜索一下条目的标题(来源搜索:"GLib"网页新闻书籍学术图像),以检查网络上是否存在该主题的更多可靠来源(判定指引)。
GLib
原作者Shawn Amundson
開發者GNOME計劃
当前版本
  • 2.79.1 (2024年1月22日;穩定版本)[1]
編輯維基數據鏈接
源代码库 編輯維基數據鏈接
编程语言C
操作系统Linux类Unix系统OS XMicrosoft Windows
系統平台跨平台
语言多语言
类型
许可协议GNU宽通用公共许可证
网站wiki.gnome.org/Projects/GLib

GLib是一个跨平台的、用C语言编写的五个底层的集合,为GNOME所使用。

历史

GLib起初是GTK+的一部分,但到了GTK+第二版,开发者决定把跟图形界面无关的代码分开,这些代码于是就组装成了GLib。

因为GLib具有跨平台特性,所以用它编写的程序可以无需进行大幅度修改就可以在其他程序上编译和运行。[2]

功能

GLib提供了多种高级的数据结构,如内存块、双向和单向链表哈希表、动态字符串以及字符串工具(例如词法分析器,字符串切分等)、动态数组、平衡二叉树、n-叉树、键值存储、关系和元组,还有带有缓存的内存管理。

Glib还实现了线程相关的函数、多线程编程以及相关的工具,例如原始变量访问、互斥锁、异步队列、安全内存池、消息传递和日志、钩子函数和计时器,同时消息传递还包含了字节序转换和IO channel。

组成

GLib由五个库组成:

参考文献

  1. ^ 2.79.1 · GNOME / GLib · GitLab. 
  2. ^ 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! 

外部链接