GLib - GLib
![]() | tento článek potřebuje další citace pro ověření.Července 2019) (Zjistěte, jak a kdy odstranit tuto zprávu šablony) ( |
Původní autoři | Shawn Amundson |
---|---|
Vývojáři | Projekt GNOME et al. |
První vydání | 1998 |
Stabilní uvolnění | 2.64.4 (2. července 2020[±][1] | )
Úložiště | ![]() |
Napsáno | C |
Operační systém | Linux, Unixový, Operační Systém Mac, Okna |
Plošina | Cross-platform |
Typ | Knihovna |
Licence | LGPLv2.1 |
webová stránka | wiki |
GLib je balíček tří (dříve pěti) nízkoúrovňových systémů knihovny napsáno v C a vyvinutý hlavně GNOME. GLibův kód byl oddělen od GTK, takže jej může používat i jiný software než GNOME a od té doby se vyvíjí paralelně.
Funkce
GLib poskytuje pokročilé datové struktury, jako jsou paměťové bloky, dvakrát a jednotlivě propojené seznamy, hash tabulky, dynamický struny a řetězcové nástroje, například a lexikální skener, bloky řetězců (skupiny řetězců), dynamické pole, vyvážený binární stromy, N-ary stromy, kvarky (obousměrné přidružení řetězce a jedinečný celočíselný identifikátor), seznamy klíčových dat, relace a n-tice. Mezipaměti poskytovat správu paměti.
GLib implementuje funkce, které poskytují vlákna, programování vláken a související zařízení, jako je primitivní přístup k proměnným, mutexy, asynchronní fronty, zabezpečit fondy paměti, předávání zpráv a těžba dřeva, háčkové funkce (registrace zpětného volání) a časovače. GLib také zahrnuje zařízení pro předávání zpráv, jako je převod pořadí bytů a I / O kanály.
Mezi další funkce GLib patří:
Součásti
Balíček GLib sestával z pěti knihoven, ale všechny byly sloučeny do jedné knihovny, od té doby pojmenované jednoduše GLib, a již nejsou podporovány jako samostatné knihovny. Původní knihovny byly:
Z nich tři nadále sídlí v odlišných podadresářích zdrojového stromu, takže je lze považovat za diskrétní komponenty: GLib, GObject a GIO. Lze je považovat za softwarový zásobník: GObject spoléhá na GLib a GIO poskytuje funkce na vyšší úrovni, které používají obojí.
Dějiny
GLib začal jako součást GTK + projekt, nyní pojmenovaný GTK. Před vydáním GTK + verze 2 se však vývojáři projektu rozhodli oddělit kód od GTK +, který nebyl určen grafická uživatelská rozhraní (GUI), čímž se vytváří GLib jako samostatný softwarový balíček. GLib byl vydán jako samostatná knihovna, takže ostatní vývojáři, kteří nepoužívají části GTK + související s grafickým uživatelským rozhraním, mohli používat části knihovny bez grafického uživatelského rozhraní bez režie v závislosti na plné knihovně GUI.
Protože GLib je a napříč platformami knihovna, aplikace, které ji používají k propojení s operační systém jsou obvykle přenosné napříč různými operačními systémy bez větších změn.[2]
Zprávy
Aktuální přehled viz Plán 2.24–2.36 a 2,38 – aktuální, podrobnosti viz příslušné poznámky k verzi v seznamu adresátů nebo v adresáři tarballs.
Vydání série | Počáteční datum vydání | Hlavní vylepšení |
---|---|---|
GLib 1.x | ||
1.1 | 1998-09-12 | |
1.2 | 1999-02-27 | |
1.3 | 2001-09-25 | |
GLib 2.x | ||
2.0 | 2002-03-08 | |
2.24 | 2010-03-26 | GVariant, GConverted |
2.26 | 2010-09-27 | GNastavení, GDbus, GObject vazby vlastností (GAtomic pro refinancování) |
2.30 | 2011-09-26 | Nejedinečné aplikace GA, použití eventfd () pro probuzení mainloop, optimalizace sady GHashTable, škálovatelnost dat GObject |
2.32 | 2012-03-24 | Plány pro GLib 2.32 |
2.34 | 2012-09-23 | Co je nového pro vývojáře v GLib 2.34 |
2.36 | 2013-03-25 | |
2.38 | 2013-09-23 | aplikace spuštěné pomocí D-Bus aktivace[3] GSubproces, Unicode 6.3 (vydáno září 2013) |
2.40 | 2014-03-24 | GNotification, API pro oznamování systému[4] |
2.42 | 2014-09-22 | |
2.43 | 2014-10-27 | |
2.44 | 2015-03-23 | |
2.45 | 2015-04-30 | |
2.46 | 2015-09-21 | |
2.47 | 2015-10-26 | |
2.48 | 2016-03-22 | |
2.50 | 2016-09-19 | |
2.52 | 2017-03-19 | |
2.53 | 2017-04-25 | |
2.54 | 2018-01-08 |
Podobné projekty
jiný sady nástrojů pro widgety poskytovat funkce a implementace datových struktur na nízké úrovni, včetně:
- Standardní knihovna šablon (STL) - C ++ knihovna pro datové struktury a algoritmy
- Zvýšit - poskytuje některé funkce pro C ++, například threading primitiva, podobné tomu, co GLib dělá pro C
- QtCore - základní API Rámec Qt
- wxBase - funkce GUI bez GUI wxWidgets knihovna
- The Přenosný běh Apache a Apple Základní nadace mají velké funkční překrytí s GLib a poskytují mnoho podobných implementací OS, přenosných vláken, síťových a datových struktur v C.
Reference
- ^ Withnall, Philip (2. července 2020). „glib 2.64.4“. GNOME ftp-vydání (Poštovní seznam). Citováno 14. srpna 2020.
- ^ Krause, Andrew (2007). Základy vývoje GTK +. Hlas odborníka v otevřeném zdroji. Apress. p.5. ISBN 1-59059-793-1. Citováno 3. dubna 2013.
[GLib] poskytuje rozhraní pro různé platformy, které umožňuje spuštění vašeho kódu v kterémkoli z jeho podporovaných operačních systémů s malým až žádným přepisem kódu!
- ^ „Nastavení aplikace pro spouštění D-Bus“.
- ^ "GNotification".