Sönke Ludwig
c404cc2e5b
Merge pull request #76 from Boris-Barboris/keepalive_params
...
fix Keepalive on Linux, expose keepalive options, TCP_USER_TIMEOUT for linux.
2018-08-29 23:16:23 +02:00
Sönke Ludwig
0c62764216
Add Solaris definition for O_CLOEXEC. Fixes #82 .
2018-08-16 15:19:12 +02:00
Boris-Barboris
ed9fdcd467
ease asserting, constants wrapped for future robustness
2018-06-06 11:45:36 +00:00
Sönke Ludwig
00ef149c04
Merge pull request #81 from vibe-d/windows_event_poll_fixes
...
Remove special case for zero-wait processing off events.
2018-06-05 12:12:31 +02:00
Sönke Ludwig
5d317ca9e7
Remove special case for zero-wait processing off events.
...
This ensures that all kinds of events are processed, including timers and I/O events.
2018-06-05 11:35:57 +02:00
Sönke Ludwig
abdbc91c4b
Merge pull request #72 from kubo39/res_init
...
Call __res_init on linux when getaddrinfo failed, fix #40
2018-05-13 09:45:12 +02:00
The Dlang Bot
ca56b31566
Merge pull request #71 from kubo39/somaxconn
...
Get the listen backlog size from net.core.somaxconn on Linux
merged-on-behalf-of: Sönke Ludwig <s-ludwig@users.noreply.github.com>
2018-05-13 09:44:42 +02:00
Sönke Ludwig
745e4ea2c6
Merge pull request #79 from vibe-d/nested_initialization
...
Fix initialization behavior when being loaded as a shared library.
2018-05-05 12:16:57 +02:00
Sönke Ludwig
48b214dd09
Fix initialization behavior when being loaded as a shared library.
...
When loading a shared library where both, the host and the library, use eventcore, the static constructors/destructors will be called multiple times.
2018-05-04 17:45:10 +02:00
Boris-Barboris
a2d96f1831
fix setKeepAliveParams on Windows
2018-04-02 18:06:00 +03:00
Boris-Barboris
322438697c
TCP_USER_TIMEOUT
2018-04-02 14:02:09 +00:00
Boris-Barboris
cdb141ba4a
add setKeepAliveParams method
2018-04-02 11:11:28 +00:00
Sönke Ludwig
242432c416
Fix two possible causes for range violations in the WinAPI handle map.
2018-03-30 16:57:45 +02:00
Sönke Ludwig
811ae63698
Fix indentation.
2018-03-30 16:56:42 +02:00
Hiroki Noda
e68f1425a9
format
2018-03-22 05:16:36 +09:00
Hiroki Noda
d3708c5e66
Fix: leak fd
2018-03-22 05:14:10 +09:00
Hiroki Noda
041d55e584
Get the listen backlog size from net.core.somaxconn on linux
2018-03-22 05:12:37 +09:00
Sönke Ludwig
51527e77f8
Actually close files in the WinAPI driver.
2018-03-20 21:03:43 +01:00
Sönke Ludwig
df9e9fce3d
Merge pull request #70 from vibe-d/lazy_dns_event
...
Create the DNS helper event lazily.
2018-03-18 09:58:14 +01:00
Sönke Ludwig
3cb0891c58
Create the DNS helper event lazily.
...
Reduces resource usage on threads that don't perform DNS queries.
2018-03-18 01:32:09 +01:00
Sönke Ludwig
eaf7ab778b
Merge pull request #69 from vibe-d/fix_file_close
...
Fix dangling handles resulting from actively closing a file.
2018-03-18 01:31:40 +01:00
Sönke Ludwig
b09d15d503
Fix dangling handles resulting from actively closing a file.
2018-03-17 17:11:03 +01:00
Sönke Ludwig
546f8f8445
Merge pull request #68 from vibe-d/file_resource_improvent
...
Tighten the file descriptor slot checks.
2018-03-17 17:10:33 +01:00
Sönke Ludwig
7da41301af
Tighten the file descriptor slot checks.
...
Gives the chance to detect possible dangling file descriptors earlier.
2018-03-17 13:11:44 +01:00
Sönke Ludwig
d2cac0cca1
Merge pull request #66 from vibe-d/run_in_owner_thread
...
Implement runInOwnerThread
2018-03-16 17:51:01 +01:00
Sönke Ludwig
1dfed63ad9
Drop left-over DMD 2.071 test run.
2018-03-16 16:11:47 +01:00
Sönke Ludwig
910451557b
Add test for runInOwnerThread.
2018-03-16 16:11:47 +01:00
Sönke Ludwig
16e2d9587d
Implement EventDriverCore.runInOwnerThread.
2018-03-16 16:11:46 +01:00
Sönke Ludwig
ff4d65a131
Merge pull request #67 from vibe-d/more_userdata
...
Add userData!T properties for all descriptor based primitives.
2018-03-16 15:52:56 +01:00
Sönke Ludwig
7bfbb64899
Add userData!T properties for all descriptor based primitives.
2018-03-16 13:39:03 +01:00
Sönke Ludwig
68b8f44957
Merge pull request #63 from vibe-d/fix_connect_socket_callback
...
Call the callback on connectStream socket creation failure.
2018-03-14 22:19:14 +01:00
Sönke Ludwig
6262c48db3
Merge pull request #65 from vibe-d/fix_eventfd_leak
...
Fix leaked eventfd in PosixEventDriverCore.
2018-03-14 22:19:00 +01:00
Sönke Ludwig
50f135416c
Merge pull request #64 from vibe-d/lazy_threadedfile_event
...
Create the event object in ThreadedFileEventDriver lazily.
2018-03-14 22:18:42 +01:00
Sönke Ludwig
b6b32f4a49
Fix leaked eventfd in PosixEventDriverCore.
...
The leak occurred once per thread, which showed up in conjunction with DNS lookups in particular, as a thread is currently created for each lookup.
2018-03-14 21:59:42 +01:00
Sönke Ludwig
4192d31716
Create the event object in ThreadedFileEventDriver lazily.
...
Avoids creating event objects for every worker thread, even if never used.
2018-03-14 21:39:54 +01:00
Sönke Ludwig
02de8341aa
Call the callback on connectStream socket creation failure.
...
The callback must *always* be called at some point, because the generic async->sync logic in vibe-core otherwise has no way to know whether to expect a callback or not.
2018-03-14 20:43:40 +01:00
Sönke Ludwig
0044946413
Merge pull request #62 from vibe-d/fix_winapi_watcher_shutdown
...
Fix cleanup code for directory watchers in the WinAPI driver.
2018-03-14 19:11:53 +01:00
Sönke Ludwig
53bb8eeead
Fix cleanup code for directory watchers in the WinAPI driver.
...
- Fixes an assertion triggered by accessing a file field in releaseRef
- Fixed a potential leak of file system watcher handles when calling releaseRef from inside the supplied callback - this was the reason why the fixed assertion error wasn't triggered by the test code
2018-03-14 16:39:57 +01:00
The Dlang Bot
574de0760d
Merge pull request #59 from vibe-d/github_dub_download
...
Download DUB 1.8.0 from GitHub instead of code.dlang.org.
merged-on-behalf-of: Sönke Ludwig <s-ludwig@users.noreply.github.com>
2018-03-12 19:27:17 +01:00
Sönke Ludwig
7a43468bbd
Download DUB 1.7.2 from GitHub instead of code.dlang.org.
2018-03-12 12:57:39 +01:00
Sönke Ludwig
3d7cf5744c
Merge pull request #61 from vibe-d/remove_obsolete_events
...
Fix issues in the WinAPI driver
2018-03-12 00:00:10 +01:00
Sönke Ludwig
a681fc988b
Merge pull request #60 from vibe-d/single_file_taskpool
...
Use a single thread pool for all threaded file driver threads.
2018-03-11 23:36:34 +01:00
Sönke Ludwig
f094b3934b
Make sure that no obsolete I/O events get processed.
...
Removes overlapped I/O events when a handle gets closed prematurely (before all events have been processed) to avoid potential range violation errors as a consequence.
2018-03-11 20:32:32 +01:00
Sönke Ludwig
26907c7489
Fix set up of OVERLAPPED struct for files.
2018-03-11 20:31:44 +01:00
Sönke Ludwig
3090bc2c7c
Implement filterPending for ConsumableQueue.
2018-03-11 20:31:44 +01:00
Sönke Ludwig
bcf178ef98
Merge pull request #58 from vibe-d/nogc_assert
...
Use a custom nogc_assert in cleanup code.
2018-03-11 20:30:50 +01:00
Sönke Ludwig
f5f64ee476
Use a single thread pool for all threaded file driver threads.
...
This avoids multiplying the number of threads by 5 for each thread that performs file I/O.
2018-03-11 14:46:55 +01:00
Sönke Ludwig
df78af96bb
Use a custom nogc_assert in cleanup code.
...
Unfortunately the built-in assert GC allocates an exception, which means that if called directly or indirectly form a finalizer, the assertion will not become visible and instead an InvalidMemoryOperationError is thrown.
This implements a custom nogc_assert() function that directly prints the assertion message and uses abort() to end the process.
2018-03-11 13:56:10 +01:00
Sönke Ludwig
acc35e1107
Merge pull request #57 from vibe-d/fix_windows_completion_routines
...
Call Windows IO callbacks outside of completion routines.
2018-03-11 12:03:13 +01:00
Sönke Ludwig
9dc8b796e5
Get rid of OVERLAPPED_FILE.
...
The hEvent member is currently unused for files. Using it for the file handle makes the OVERLAPPED_CORE struct sufficient.
2018-03-11 00:27:14 +01:00