eventcore 0.8.1

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:

Manual usage
Put the following dependency into your project's dependences section:

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.

DUB Package Posix Build Status Windows Build Status

Supported drivers and operating systems

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

¹ planned, but not currenly implemented

Driver development status

FeatureSelectEventDriverEpollEventDriverWinAPIEventDriverKqueueEventDriver
TCP Socketsyesyesyes
UDP Socketsyesyesyes
USDSyesyesyes
DNSyesyesyesyes
Timersyesyesyesyes
Eventsyesyesyesyes
Unix Signalsyes²yes²
Filesyesyesyesyes
UI Integrationyes¹yes¹yesyes¹
File watcheryes²yes²yes
FeatureLibasyncEventDriver
TCP Sockets
UDP Sockets
USDS
DNS
Timers
Events
Unix Signals
Files
UI Integration
File watcher

¹ Manually, by adopting the X11 display connection socket

² Currently only supported on Linux

Open questions

  • Error code reporting
  • Adopting existing file descriptors (done for files)
  • Enqueued writes
  • Use the type system to prohibit passing thread-local handles to foreign threads
Dependencies:
taggedalgebraic
Versions:
0.9.22 2023-Jan-21
0.9.21 2022-Sep-22
0.9.20 2021-Dec-17
0.9.19 2021-Oct-25
0.9.18 2021-Aug-24
Show all 93 versions
Download Stats:
  • 297 downloads today

  • 2480 downloads this week

  • 18301 downloads this month

  • 1439150 downloads total

Score:
4.7
Short URL:
eventcore.dub.pm