Spec-Zone.ru › Haskell 7

GHC.Event

Safe Haskell Надёжный
Язык Haskell2010

Содержание

  • Типы
  • Создание
  • Регистрация интереса к событиям ввода-вывода
  • Регистрация интереса к событиям таймаута

Описание

Этот модуль предоставляет масштабируемые уведомления о событиях для дескрипторов файлов и таймаутов.

Этот модуль следует считать внутренним для GHC.

  • ---------------------------------------------------------------------------

Типы

data EventManager Источник

Состояние менеджера событий.

data TimerManager Источник

Состояние менеджера событий.

Создание

getSystemEventManager :: IO (Может EventManager) Источник

Получение системного менеджера событий для возможности, на которой работает вызывающая нить.

Эта функция всегда возвращает Just менеджер событий текущей нити при использовании потоковой RTS и Nothing в противном случае.

new :: IO EventManager Источник

Создание нового менеджера событий.

getSystemTimerManager :: IO TimerManager Источник

Регистрация интереса к событиям ввода-вывода

data Event Источник

Событие ввода-вывода.

Примеры

Eq Event
Show Event
Monoid Event

evtRead :: Event Источник

Данные доступны для чтения.

evtWrite :: Event Источник

Дескриптор файла готов принять запись.

type IOCallback = FdKey -> Event -> IO () Источник

Обратный вызов, вызываемый при событиях ввода-вывода.

data FdKey Источник

Файл дескриптор регистрации cookie.

Примеры

Eq FdKey
Show FdKey

data Срок действия Источник

Срок действия регистрации события.

С: 4.8.1.0

Конструкторы

Одноразовый

Регистрация будет активной только для одного события

Многоразовый

Регистрация будет срабатывать несколько раз

Примеры

Eq Срок действия
Show Срок действия
Моноид Срок действия

mappend == elSupremum

registerFd :: EventManager -> IOCallback -> Fd -> Event -> Срок действия -> IO FdKey Источник

registerFd mgr cb fd evs lt регистрирует интерес к событиям evs на дескрипторе файла fd для срока действия lt. cb вызывается для каждого возникшего события. Возвращает cookie, который может быть передан в unregisterFd.

unregisterFd :: EventManager -> FdKey -> IO () Источник

Удаление предыдущей регистрации дескриптора файла.

unregisterFd_ :: EventManager -> FdKey -> IO Bool Источник

Удаление предыдущей регистрации дескриптора файла без пробуждения нити менеджера событий. Значение возврата указывает, следует ли будить менеджер событий.

closeFd :: EventManager -> (Fd -> IO ()) -> Fd -> IO () Источник

Закрытие дескриптора файла безопасным способом в условиях гонки.

Регистрация интереса к событиям таймаута

type TimeoutCallback = IO () Источник

Обратный вызов, вызываемый при событиях таймаута.

data TimeoutKey Источник

Cookie регистрации таймаута.

Примеры

Eq TimeoutKey

registerTimeout :: TimerManager -> Int -> TimeoutCallback -> IO TimeoutKey Источник

Регистрация таймаута на заданное количество микросекунд. Возвращаемое TimeoutKey может использоваться для последующей отмены или обновления таймаута. Таймаут автоматически отменяется после истечения указанного времени.

updateTimeout :: TimerManager -> TimeoutKey -> Int -> IO () Источник

Обновление активного таймаута для срабатывания через заданное количество микросекунд.

unregisterTimeout :: TimerManager -> TimeoutKey -> IO () Источник

Отмена активного таймаута.

© The University of Glasgow and others
Licensed under a BSD-style license (see top of the page).
https://downloads.haskell.org/~ghc/7.10.3/docs/html/libraries/base-4.8.2.0/GHC-Event.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API