Commit graph

415 commits

Author SHA1 Message Date
Sönke Ludwig e2e8bf30aa Change shutdown behavior to allow graceful handle leaks.
This avoids crashing in case of any handle references left-over in GC allocated memory that gets finalized after module destructors have already been run.
2018-10-26 20:40:22 +02:00
Sönke Ludwig 38a4e4ca5f Test leaking handles through the GC. 2018-10-26 15:41:18 +02:00
Sönke Ludwig 5deeced2b5
Merge pull request #86 from vibe-d/lazy_init
Lazy driver initialization
2018-10-25 12:07:20 +02:00
Sönke Ludwig c553df66e1 Fix freeing of the loop in PosixEventDriver 2018-10-24 21:06:31 +02:00
Sönke Ludwig 4d8d08b27d Fix destruction code in ChoppedVector. 2018-10-24 21:05:45 +02:00
Sönke Ludwig 406367b6c6 Fix epoll compile error on older frontends. 2018-10-24 12:08:38 +02:00
Sönke Ludwig 6e839de7e2 Refactor PollEventDriverWatchers.
- Better encapsulates the mutex protection inside PollingThread
- Uses mallocT/freeT to allocate snapshot nodes
2018-10-24 11:38:14 +02:00
Sönke Ludwig 0b73eda8d5 Deprecate the non-nogc userData overload.
This allows more of the implementation to become nogc.
2018-10-24 11:38:14 +02:00
Sönke Ludwig 73abd867b4 Initialize the driver instance lazily. 2018-10-24 11:38:14 +02:00
Sönke Ludwig 284d4f43c3 Make the WinAPI driver initialization nogc. 2018-10-24 11:38:14 +02:00
Sönke Ludwig e7e4a0f5f5 Make the Posix driver initialization nogc. 2018-10-24 11:38:14 +02:00
Sönke Ludwig a4eaafce9a Avoid GC allocation in StaticTaskPool. 2018-10-24 11:38:13 +02:00
Sönke Ludwig d66f257179 Avoid GC allocations for LoopTimeoutTimerDriver.m_firedTimers. 2018-10-24 11:38:13 +02:00
Sönke Ludwig 4a605640bc Make ConsumableQueue nogc. 2018-10-24 11:38:13 +02:00
Sönke Ludwig 90a60f7981 Add nogc typed alloc/free functions and make assert_nogc actually nogc. 2018-10-24 11:38:13 +02:00
Sönke Ludwig d437df8809
Merge pull request #85 from vibe-d/test_lastest_compilers
Test lastest compilers
2018-10-02 12:14:02 +02:00
Sönke Ludwig 619b8de2a5 Upgrade compiler support to 2.076.1-2.082.0. 2018-10-02 11:13:11 +02:00
Sönke Ludwig 04ceb51fce Add LICENSE files and fix package license field. 2018-10-02 11:09:26 +02:00
Sönke Ludwig 4e3edf5292 Fix ThreadedFileEventDriver event cancellation when not waiting. 2018-10-02 10:16:26 +02:00
The Dlang Bot de96942501
Merge pull request #84 from vibe-d/fix_watchers_ucs2
Fix watchers UCS-2 to UTF-8 conversion
merged-on-behalf-of: Leonid Kramer <l-kramer@users.noreply.github.com>
2018-10-02 09:18:29 +02:00
Sönke Ludwig 8495d7d91c Fix UCS-2 to UTF-8 conversion in the Windows watchers implementation. 2018-10-01 22:00:26 +02:00
Sönke Ludwig 87fb595aee Clear WSA buffers to make sure to detect erroneous accesses. 2018-10-01 22:00:22 +02:00
Sönke Ludwig 491e100ef5
Merge pull request #83 from vibe-d/s-ludwig-patch-1
Add Solaris definition for O_CLOEXEC. Fixes #82.
2018-08-29 23:16:47 +02:00
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