eventcore 0.8.47

Pro-actor based abstraction layer over operating system asynchronous I/O facilities.


To use this package, run the following command in your project's root directory:

EventCore

This is a high-performance native event loop abstraction for D, focused on asynchronous I/O and GUI message integration. The API is callback (delegate) based. For a higher level fiber based abstraction, take a look at vibe.d.

The API documentation is part of vibe.d:

DUB Package Posix Build Status Windows Build Status

Supported drivers and operating systems

DriverLinuxWindowsmacOSFreeBSDAndroidiOS
SelectEventDriveryesyesyesyes¹
EpollEventDriveryes
WinAPIEventDriveryes
KqueueEventDriveryesyes¹
LibasyncEventDriver—¹—¹—¹—¹

¹ planned, but not currenly implemented

Supported compilers

The following compilers are tested and supported:

  • DMD 2.087.1
  • DMD 2.086.1
  • DMD 2.085.1
  • DMD 2.084.1
  • DMD 2.079.0
  • LDC 1.17.0
  • LDC 1.16.0
  • LDC 1.15.0
  • LDC 1.14.0
  • LDC 1.13.0
  • LDC 1.9.0

Driver development status

Feature \ EventDriverSelectEpollWinAPIKqueueLibasync
TCP Socketsyesyesyesyes
UDP Socketsyesyesyesyes
USDSyesyesyes
DNSyesyesyesyes
Timersyesyesyesyes
Eventsyesyesyesyes
Unix Signalsyes²yes
Filesyesyesyesyes
UI Integrationyes¹yes¹yesyes¹
File watcheryes²yesyesyes²
Pipesyesyesyes
Processesyesyesyes

¹ Manually, by adopting the X11 display connection socket

² Systems other than Linux use a polling implementation

Open questions

  • Error code reporting
  • Enqueued writes
  • Use the type system to prohibit passing thread-local handles to foreign threads
Dependencies:
taggedalgebraic
Versions:
0.8.47 2019-Oct-08
0.8.46 2019-Aug-23
0.8.45 2019-Aug-21
0.8.44 2019-Aug-20
0.8.43 2019-Jun-02
Show all 66 versions
Download Stats:
  • 955 downloads today

  • 5112 downloads this week

  • 20362 downloads this month

  • 581679 downloads total

Score:
4.6
Short URL:
eventcore.dub.pm