Sönke Ludwig
e72b071057
Add debug output for the getaddrinfo based DNS lookup driver.
2017-01-23 12:17:53 +01:00
Sönke Ludwig
e55e23368a
Fix compile error on macOS.
2017-01-23 11:52:09 +01:00
Sönke Ludwig
d6321a2b52
Fix waiter count bookkeeping in PosixEventDriverEvents.
2017-01-23 11:34:14 +01:00
Sönke Ludwig
e5078ad399
Fix ConsumableQueue.consume with no entries present.
2017-01-23 11:33:45 +01:00
Sönke Ludwig
0422ee495c
Fix null pointer error.
2017-01-23 11:15:03 +01:00
Sönke Ludwig
a8aa505373
Fix Linux build.
2017-01-23 10:38:09 +01:00
Sönke Ludwig
b556849af2
Fully fix the Win64 build (test might still fail).
2017-01-23 10:03:36 +01:00
Sönke Ludwig
2c4534d178
Fix Win64 build.
2017-01-23 09:09:30 +01:00
Sönke Ludwig
217a6698cb
Fix type conversion error.
2017-01-22 21:55:51 +01:00
Sönke Ludwig
619948c4d5
Another fix attempt for the special read 0 behavior.
2017-01-22 21:29:12 +01:00
Sönke Ludwig
25bab3e37e
Make the kqueue event driver work.
2017-01-22 20:54:09 +01:00
Sönke Ludwig
c9c6d73f5e
Make the kqueue event driver compile on macOS (doesn't work yet).
2017-01-22 18:43:29 +01:00
Sönke Ludwig
1c83076897
Fixup TCP read wait special case.
2017-01-22 12:40:07 +01:00
Sönke Ludwig
dd5c88d1ed
Fix compilation and event behavior on macOS.
2017-01-22 12:36:27 +01:00
Sönke Ludwig
f5b514899a
Add basic documentation for the driver interface.
2017-01-22 11:39:01 +01:00
Sönke Ludwig
58c89a7369
Implement proper zero size wait semantics for Posix stream sockets.
2017-01-22 10:47:58 +01:00
Sönke Ludwig
ca81d25645
Implement socket adoption and fix wait loops on Windows for the Posix driver.
2017-01-22 10:43:18 +01:00
Sönke Ludwig
28040004cf
Another compile fix.
2017-01-22 03:32:38 +01:00
Sönke Ludwig
55ea6c192f
DMD 2.073.0-rc1 compile fixes.
2017-01-22 03:26:47 +01:00
Sönke Ludwig
922c9e8e72
Revert "Make the address parameter of send() scoped."
...
This reverts commit 1385250884
.
2017-01-22 03:16:36 +01:00
Sönke Ludwig
d6f6fc8357
Posix compile fix.
2017-01-22 03:10:46 +01:00
Sönke Ludwig
1385250884
Make the address parameter of send() scoped.
2017-01-22 03:05:46 +01:00
Sönke Ludwig
17c4fe65a8
Fix the Windows events implementation in the Posix driver.
2017-01-22 03:05:01 +01:00
Sönke Ludwig
924f2087f2
Fix premature event loop exit in case of waiting for events in the Posix driver.
2017-01-22 02:30:00 +01:00
Sönke Ludwig
0e38717669
Add unit test for SmallIntegerSet.
2017-01-22 02:28:40 +01:00
Sönke Ludwig
6b68e934f3
Implement file support for the WinAPI driver.
2017-01-22 02:01:13 +01:00
Sönke Ludwig
2a5252977e
Implement events for the WinAPI driver.
2017-01-21 23:19:39 +01:00
Sönke Ludwig
f7ec3da756
Implement directory watchers for the WinAPI driver.
2017-01-21 21:10:17 +01:00
Sönke Ludwig
4c7281dd01
Trivial refactor.
2017-01-21 17:27:54 +01:00
Sönke Ludwig
74d9242086
Final compile fix attempt.
2017-01-21 17:27:28 +01:00
Sönke Ludwig
40595fe133
Fix another compilation error.
2017-01-21 17:17:11 +01:00
Sönke Ludwig
0f325a47e4
Fix compilation error on Linux.
2017-01-21 16:40:28 +01:00
Sönke Ludwig
12e59b9c3c
Implement basic event processing and timers for the WinAPI driver.
2017-01-21 16:39:48 +01:00
Sönke Ludwig
373cf45b1e
Also fix compilation of PosixEventDriverEvents on Windows.
...
The previous commit actually didn't fully fix the Windows build.
2017-01-21 16:34:06 +01:00
Sönke Ludwig
64f6bb2a14
Make the select based configuration compile on Windows.
2017-01-21 16:19:34 +01:00
Sönke Ludwig
a1f0cafeb3
Add IOMode parameter for file IO operations.
2017-01-19 00:24:38 +01:00
Sönke Ludwig
672e1c951d
Adjust high level wrapper and test.
2017-01-15 21:59:15 +01:00
Sönke Ludwig
8b8169b868
Add EventDriverSockets.setBroadcast.
2017-01-15 21:42:05 +01:00
Sönke Ludwig
116940a5a7
Add EventDriverSockets.getLocalAddress and make parameters scope where possible.
2017-01-15 20:56:06 +01:00
Sönke Ludwig
d8f10972eb
Added EventDriverSockets.setKeepAlive.
2017-01-15 17:21:18 +01:00
Sönke Ludwig
2341762992
Fix range violation errors in ConsumableQueue.
2017-01-13 20:30:56 +01:00
Sönke Ludwig
aa7b2946f3
Add shared overload of the EventDriver.events property.
...
This allows accessing the shared "trigger" method from a shared event driver.
2017-01-13 10:20:51 +01:00
Sönke Ludwig
a3ca0965cf
Fix wrong epoll timeout in case of already expired timers.
...
This could cause process/task starvation due to an infinite wait timeout.
2016-12-29 22:51:07 +01:00
Sönke Ludwig
06bcccd6ac
Revert #1 .
...
The idea is that every wait() produces exactly one callback unless cancelled.
2016-12-19 22:21:36 +01:00
Sönke Ludwig
e33d36eb46
Fix compilation errors in the socket wrapper.
2016-12-19 22:16:34 +01:00
Sönke Ludwig
cc3299fb88
Fix compilation on Windows and DMD 2.072.1.
2016-12-19 16:16:22 +01:00
Sönke Ludwig
8a365f6d07
Use the 0.8.x line of libasync and fix compilation of the (stub) libasync driver.
2016-12-18 23:55:59 +01:00
Sönke Ludwig
2acf44596a
Avoid possible dangling objects referenced by timer callback delegates. Fixes #2 .
2016-12-18 19:39:29 +01:00
Satoshi
bfe1c46a73
Update timer.d
...
Don't remove callback when timer is periodic because after first hit cb cannot be called again?
2016-12-12 11:31:16 +01:00
Sönke Ludwig
7e9031439c
Remove EventDriverFiles.createTemp() and add adopt() instead.
...
The rationale is to keep the event loop abstraction at a minimal size. createTemp(), to be generally useful, would also require a getFilename(fd) method and possibly more. adopt() on the other hand is frequently useful for wrapping other libraries.
2016-12-10 15:59:03 +01:00