Jump to content

libevent

libevent
Разработчик(и) Азат Хужин, Марк Эллзи, Ник Мэтьюсон, Нильс Провос
Первоначальный выпуск 9 апреля 2002 г .; 22 года назад ( 09.04.2002 )
Стабильная версия
2.1.12 / 5 июля 2020 г .; 4 года назад ( 05.07.2020 ) [1]
Репозиторий
Написано в С
Операционная система Кросс-платформенный
Платформа Unix-подобный , Windows , OS X
Тип Сетевая библиотека
Лицензия БСД [2]
Веб-сайт libevent .org

libevent — это программная библиотека , обеспечивающая асинхронное уведомление о событиях. libevent API предоставляет механизм выполнения функции обратного вызова происходит определенное событие , когда в дескрипторе файла или по тайм-аута истечении . libevent также поддерживает обратные вызовы, запускаемые сигналами и регулярными таймаутами.

libevent предназначен для замены цикла событий управляемых событиями , обнаруженного на сетевых серверах, . Приложение может просто вызвать event_dispatch() а затем динамически добавлять или удалять события без необходимости изменения цикла событий.

В настоящее время libevent поддерживает /dev/poll, kqueue(2), ПОСИКС select(2), Windows ИОКП , poll(2), epoll(7) и Solaris порты событий . Он также имеет экспериментальную поддержку сигналов в реальном времени. Представленный API событий является единым для всех поддерживаемых платформ. В результате libevent позволяет разрабатывать переносимые приложения и предоставляет «наиболее масштабируемый механизм уведомления о событиях, доступный в операционной системе». [1]

Используя обратные вызовы для сигналов, libevent позволяет писать «безопасные» обработчики сигналов, поскольку ни один из предоставленных пользователем кодов обработки сигналов не выполняется в контексте сигнала .

libevent был создан Нильсом Провосом и поддерживается в основном Азатом Хужиным. Он выпущен под лицензией BSD . [3]

Известные приложения

[ редактировать ]

Вот некоторые из известных приложений, использующих преимущества libevent:

  • Google Chrome : веб-браузер Google (версии для Mac и Linux). [4]
  • Memcached : высокопроизводительная система кэширования объектов с распределенной памятью. [5]
  • Передача : клиент BitTorrent с открытым исходным кодом.
  • ntpd протокола сетевого времени. : демон
  • Tor : анонимная система интернет-коммуникаций.
  • tmux : терминальный мультиплексор [6]

Альтернативы

[ редактировать ]

Выпуски основных версий

[ редактировать ]
  • libevent 2.1 был выпущен 3 апреля 2012 года.
  • libevent 2.0 был выпущен 17 апреля 2009 года.
  • libevent 1.4 был выпущен 11 ноября 2007 года.
  • libevent 1.3 был выпущен 15 февраля 2007 года.
  • libevent 1.2 был выпущен 15 октября 2006 г.
  • libevent 1.1 был выпущен 14 мая 2005 года.
  1. ^ Jump up to: а б «libevent — библиотека уведомлений о событиях» . libevent.org . Проверено 17 сентября 2021 г.
  2. ^ «ЛИЦЕНЗИЯ» . Гитхаб . Проверено 30 августа 2019 г.
  3. ^ http://www.monkey.org/~provos/libevent/LICENSE Лицензия libevent
  4. ^ « Third_party/libevent — chromium/chromium — Git в Google» . chromium.googlesource.com . Проверено 30 апреля 2023 г.
  5. ^ "Установить" . Гитхаб . Проверено 30 апреля 2023 г.
  6. ^ «tmux/README на Master — tmux/tmux — GitHub» . Гитхаб .
[ редактировать ]
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: 54c801b47f40469d911d0a2b854120ae__1720463220
URL1:https://arc.ask3.ru/arc/aa/54/ae/54c801b47f40469d911d0a2b854120ae.html
Заголовок, (Title) документа по адресу, URL1:
libevent - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)