stringtranslate.com

Liberación

libevent es una biblioteca de software que proporciona notificaciones de eventos asincrónicos. La API de libevent proporciona un mecanismo para ejecutar una función de devolución de llamada cuando se produce un evento específico en un descriptor de archivo o después de que se alcanza un tiempo de espera . libevent también admite devoluciones de llamadas activadas por señales y tiempos de espera regulares.

libevent está pensado para reemplazar el bucle de eventos que se encuentra en los servidores de red controlados por eventos . Una aplicación puede simplemente llamar event_dispatch()y luego agregar o eliminar eventos de manera dinámica sin tener que cambiar el bucle de eventos.

Actualmente , libevent admite los puertos de eventos /dev/poll, kqueue(2), POSIX select(2), Windows IOCP , y Solaris . También tiene soporte experimental para señales en tiempo real. La API de eventos expuesta es uniforme en todas las plataformas compatibles. Como resultado, libevent permite el desarrollo de aplicaciones portátiles y proporciona "el mecanismo de notificación de eventos más escalable disponible en un sistema operativo". [1]poll(2)epoll(7)

Al utilizar devoluciones de llamadas en señales, libevent permite escribir manejadores de señales "seguros" ya que ninguno de los códigos de manejo de señales suministrados por el usuario se ejecuta en el contexto de la señal .

libevent fue creado por Niels Provos y es mantenido principalmente por Azat Khuzhin. Se publica bajo una licencia BSD . [3]

Aplicaciones notables

Algunas de las aplicaciones notables que aprovechan libevent son:

Alternativas

Lanzamientos de versiones principales

Referencias

  1. ^ ab "libevent – ​​una biblioteca de notificaciones de eventos". libevent.org . Consultado el 17 de septiembre de 2021 .
  2. ^ "LICENCIA". Github . Consultado el 30 de agosto de 2019 .
  3. ^ http://www.monkey.org/~provos/libevent/LICENSE Licencia de libevent
  4. ^ "third_party/libevent - chromium/chromium - Git en Google". chromium.googlesource.com . Consultado el 30 de abril de 2023 .
  5. ^ "Instalar". GitHub . Consultado el 30 de abril de 2023 .
  6. ^ "tmux/README en Master - tmux/tmux - GitHub". GitHub .

Enlaces externos