eventcore/README.md

47 lines
2.1 KiB
Markdown
Raw Normal View History

2016-01-16 14:47:27 +00:00
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](https://vibed.org/).
2016-06-18 05:32:17 +00:00
[![Build Status](https://travis-ci.org/vibe-d/eventcore.svg?branch=master)](https://travis-ci.org/vibe-d/eventcore)
2016-01-16 14:47:27 +00:00
Supported drivers and operating systems
---------------------------------------
2016-06-24 12:22:08 +00:00
Driver | Linux | Windows | OS X | FreeBSD
2016-01-16 14:47:27 +00:00
------------------|-------|---------|------|--------
SelectEventDriver | yes | yes | yes¹ | yes¹
2016-06-24 12:22:08 +00:00
EpollEventDriver | yes | no | no | no
2016-10-19 12:29:18 +00:00
WinAPIEventDriver | no | yes¹ | no | no
2016-10-05 02:21:44 +00:00
KqueueEventDriver | no | no | yes¹ | yes¹
2016-06-24 12:22:08 +00:00
¹ planned, but not currenly implemented
2016-01-16 14:47:27 +00:00
Driver development status
-------------------------
2016-10-19 12:29:18 +00:00
Feature | SelectEventDriver | EpollEventDriver | WinAPIEventDriver | KqueueEventDriver
-----------------|-------------------|------------------|-------------------|------------------
TCP Sockets | yes | yes | no | no
UDP Sockets | yes | yes | no | no
USDS | yes | yes | no | no
DNS | yes | yes | no | no
Timers | yes | yes | no | no
Events | yes | yes | no | no
Signals | yes² | yes² | no | no
Files | yes | yes | no | no
UI Integration | no | no | no | no
File watcher | yes² | yes² | no | no
² Currently only supported on Linux
Open questions
--------------
- Error code reporting
- Adopting existing file descriptors
- Enqueued writes