The OpenNET Project
 
Поиск (ключи):    ПРОГРАММЫ СТАТЬИ СОВЕТЫ ФОРУМ
  WIKI НОВОСТИ (+) MAN'ы ДОКУМЕНТАЦИЯ

Каталог документации / Раздел "Программирование, языки" / Оглавление документа

3.4.5 Функции ввода

Функции ввода обрабатываются на уровне Gdk. Они вызываются когда данный дескриптор файла готов для чтения или записи. Они особенно удобны для сетевых приложений.

Для добавления функции ввода, вы указываете дескриптор файла, за которым надо следить, состояние, которого вы хотите дождаться (готовность для чтения или записи), и пару обработчик/данные. Список функций 3..16 показывает это API. Функции могут быть удалены по тэгу, возвращаемому "gdk_input_add()". В отличие от функций выхода, таймаута и простоя, в данном случае можно безопасно вызывать "gdk_input_remove()" изнутри функции ввода; Gtk+ не будет в середине пробега по списку функций ввода.

Для указания условия (условий), которых необходимо дождаться, используйте флаги GdkInputCondition: "GDK_INPUT_READ", "GDK_INPUT_WRITE" и "GDK_INPUT_EXCEPTION". Вы можете объединить несколько флагов вместе операцией OR. Эти флаги соответствуют трем наборам дескриптора файла, передаваемых в системный вызов select(); детали смотрите в хорошей книге по программированию в UNIX. Если встретилось любое из указанных условий, вызывается функция ввода.

Обработчик должен выглядеть примерно так:

typedef void (*GdkInputFunction) (gpointer data, gint source_fd,
                                  GdkInputCondition condition);
Он получает данные, дескриптор файла, за которым следит, и условия, которые привели к вызову (вероятны подмножества условий, за которыми вы следите).
Список функций 3..16: Функции ввода
"#include "<gdk/gdk.h>
gint gdk_input_add(gint source_fd, GdkInputCondition condition,
                   GdkInputFunction function, gpointer data)
void gdk_input_remove(gint tag)

Linux Land
2000-09-15

АКЦИЯ! ПОДПИШИСЬ на журнал Linux Format до 31 января 2012 года и выиграй СУПЕРПРИЗ!

Журнал "Linux Format" (Линукс Формат)- Единственный в России и странах СНГ журнал на русском языке, посвящённый Linux и свободному ПО. Журнал для IT-директоров, IT-менеджеров, программистов, системных администраторов, учителей школ и преподавателей ВУЗов и всех пользователей ПК. В каждом выпуске: Новости индустрии OpenSource, обзоры новинок свободного ПО, обучающие и методические статьи.

Каждый, кто оформит подписку, получает бонус- объёмные наклейки на системный блок и подарки: с одним из первых выпусков журнала в 2012 году- диск с архивом номеров за 2005-2011 г.г. и ежемесячно электронную версию журнала в pdf-формате.

Подробнее о проведении акции вы можете прочитать на странице сайта.


  Закладки на сайте
  Проследить за страницей
Created 1996-2012 by Maxim Chirkov  
ДобавитьРекламаВебмастеруГИД  
RUNNet TopList