GLib


GLib — низкоуровневая библиотека, расширяющая возможности, предоставляемые стандартной библиотекой libc языка C.

Разрабатываемая в рамках и лежащая в основах проектов GTK и GNOME, GLib широко используется в приложениях, в том числе и неграфических. Выпуск очередной версии библиотеки по времени обычно совпадает с выпуском новой версии GTK.

GLib предоставляет основную объектную систему, используемую в GNOME, реализацию основного цикла, а также обширный набор вспомогательных функций для строк и типовых структур данных[4].

На данный момент GLib способна работать на многих UNIX-подобных операционных системах, а также MS Windows, OS/2 и BeOS.

GLib реализует функции, которые обеспечивают потоки, программирование потоков и связанные с ними средства, такие как примитивный доступ к переменным, мьютексы, асинхронные очереди, защищенные пулы памяти, передача и регистрация сообщений, функции ловушек (регистрация обратного вызова) и таймеры. GLib также включает средства передачи сообщений, такие как преобразование порядка байтов и каналы ввода-вывода.

Базовые типы данных GLib предназначены для удобства программиста и переносимости приложения. Они делятся на следующие группы: