2017 © Pedro Peláez
 

library event-loop

An event loop interface for interoperability.

image

async-interop/event-loop

An event loop interface for interoperability.

  • Sunday, March 19, 2017
  • by assertchris
  • Repository
  • 26 Watchers
  • 155 Stars
  • 5,215 Installations
  • PHP
  • 6 Dependents
  • 1 Suggesters
  • 10 Forks
  • 10 Open issues
  • 12 Versions
  • 0 % Grown

The README.md

Event Loop Interopability

The purpose of this specification is to provide a common interface for event loop implementations. This allows libraries and components from different vendors to operate in an event driven architecture, sharing a common event loop., (*1)

Current Status

This project is currently on hold and to be seen as failed for now. It might be reconsidered at a later point in time. The specification in its current state has been merged into Amp. Interoperability between ReactPHP and Amp will be solved via adapters instead of a common interface. Icicle has been deprecated and parts of it been merged into Amp libraries., (*2)

Why Bother?

Some programming languages, such as Javascript, have an event loop that is native to the execution environment. This allows package vendors to easily create asynchronous software that uses this native event loop. Although PHP is historically a synchronous programming environment, it is still possible to use asynchronous programming techniques. Using these techniques, package vendors have created event loop implementations that have seen success., (*3)

However, as these event loop implementations are from package vendors, it is not yet possible to create event driven software components that are independent of the underlying event loop implementation. By creating a common interface for an event loop, interoperability of this nature will be possible., (*4)

Goals

The functionality exposed by this interface should include the ability to:, (*5)

  • Watch input streams for available data
  • Watch output streams for the ability to perform non-blocking write operations
  • Run single and periodic timers
  • Listen for signals
  • Defer the execution of callables

Implementations

You can find available implementations on Packagist., (*6)

Compatible Packages

You can find compatible packages on Packagist., (*7)

Contributors

The Versions

19/03 2017

dev-master

9999999-dev

An event loop interface for interoperability.

  Sources   Download

MIT

The Requires

  • php >=5.5.0

 

The Development Requires

loop interop async event

09/03 2017

dev-remove-scoping

dev-remove-scoping

An event loop interface for interoperability.

  Sources   Download

MIT

The Requires

  • php >=5.5.0

 

The Development Requires

loop interop async event

21/02 2017

dev-require-void-callbacks

dev-require-void-callbacks

An event loop interface for interoperability.

  Sources   Download

MIT

The Requires

  • php >=5.5.0

 

The Development Requires

loop interop async event

21/02 2017

dev-reset-driver

dev-reset-driver

An event loop interface for interoperability.

  Sources   Download

MIT

The Requires

  • php >=5.5.0

 

The Development Requires

loop interop async event

31/01 2017

dev-get-set-loop

dev-get-set-loop

An event loop interface for interoperability.

  Sources   Download

MIT

The Requires

  • php >=5.5.0

 

The Development Requires

loop interop async event

30/01 2017

dev-add-run-method

dev-add-run-method

An event loop interface for interoperability.

  Sources   Download

MIT

The Requires

  • php >=5.5.0

 

The Development Requires

loop interop async event

13/01 2017

dev-safe-execute

dev-safe-execute

An event loop interface for interoperability.

  Sources   Download

MIT

The Requires

  • php >=5.5.0

 

The Development Requires

loop interop async event

05/01 2017

v0.5.0

0.5.0.0

An event loop interface for interoperability.

  Sources   Download

MIT

The Requires

  • php >=5.5.0

 

The Development Requires

loop interop async event

29/12 2016

v0.4.0

0.4.0.0

An event loop interface for interoperability.

  Sources   Download

MIT

The Requires

  • php >=5.5.0

 

The Development Requires

loop interop async event

30/08 2016

v0.3.0

0.3.0.0

An event loop interface for interoperability.

  Sources   Download

MIT

The Requires

  • php >=5.5.0

 

The Development Requires

loop interop async event

10/08 2016

v0.2.0

0.2.0.0

An event loop interface for interoperability.

  Sources   Download

MIT

The Requires

  • php >=5.5.0

 

The Development Requires

loop interop async event

15/07 2016

v0.1.0

0.1.0.0

An event loop interface for interoperability.

  Sources   Download

MIT

The Requires

  • php >=5.5.0

 

The Development Requires

loop interop async event