Sönke Ludwig
db449e3cb3
Fix implementation of TCPListener.bindAddress.
2017-09-28 23:52:39 +02:00
Sönke Ludwig
72540d7eaf
Work around DigitalMars/optlink#18 .
2017-09-27 17:43:08 +02:00
Sönke Ludwig
9fe9783443
Convert Waitable from struct to pure template to avoid heap closures.
...
Also fixes a case where ThreadLocalWaiter.emitSingle overlaps a call to .emit.
2017-09-27 16:41:11 +02:00
Sönke Ludwig
e32d818873
Add CircularDList.insertAfter.
2017-09-27 16:41:11 +02:00
Sönke Ludwig
a93b6e1cb1
Move log message to print before shutdown to avoid potential mixup with other log messages during shutdown.
2017-09-21 14:35:53 +02:00
Sönke Ludwig
9e0b5a7821
Fix access violation in the log module when called from a non-D thread.
2017-09-21 14:09:19 +02:00
Sönke Ludwig
a5628230c1
Fix setupWorkerThreads to actually use the provided thread count. See #35 .
2017-09-21 13:40:00 +02:00
Sönke Ludwig
dd05676c4e
Fix workerThreadCount to return the actual number of threads in the default worker pool. Fixes #35 .
2017-09-21 13:39:05 +02:00
Sönke Ludwig
0dbebac482
Add TaskPool.threadCount property.
2017-09-21 13:38:24 +02:00
Sönke Ludwig
8895f62a49
Fix parameter name.
2017-09-15 15:58:35 +02:00
Sönke Ludwig
333643d48e
Add interface_address parameter to UDPConnection.addMembership.
2017-09-15 15:54:59 +02:00
Sönke Ludwig
6cf2579206
Fix path construction from segment range with no internal separators.
2017-09-10 00:16:53 +02:00
Sönke Ludwig
cf914d8827
Update version.
2017-09-05 16:05:06 +02:00
Sönke Ludwig
2d0576a5fe
Implement the UDP multicast support methods.
2017-09-03 18:15:52 +02:00
Sönke Ludwig
7e1d6a7323
Add listenUDP overload taking a NetworkAddress.
2017-09-03 15:54:17 +02:00
Sönke Ludwig
1ef8d5206f
Fix handling of the "periodic" argument to the setTimer compatibility overload.
2017-09-03 15:46:50 +02:00
Sönke Ludwig
43260cf982
Log the fiber/task ID in the HTML logger.
2017-09-03 14:17:57 +02:00
Boris-Barboris
a590de154a
fix deadlocks, caused by second m_locks increment
2017-08-28 21:58:08 +00:00
Sönke Ludwig
544157c065
Fix return value for FileDescriptorEvent.wait.
2017-08-14 14:27:09 +02:00
Sönke Ludwig
62ee67091d
Enable support for timeouts in FileDescriptorEvent.wait.
2017-08-13 23:35:11 +02:00
Sönke Ludwig
5e979364cb
Fix whitespace.
2017-08-10 11:08:26 +02:00
Sönke Ludwig
24f4e5f70f
Resurrect GenericPath.startsWith.
...
Since the semantics are different w.r.t. path separators, the alternative suggested in the deprecation message is not valid. At least until the comparison/toString semantics of PathSegment have a profound definition, it will be kept around to avoid unneeded interruptions when upgrading to 0.8.x.
2017-08-10 10:09:01 +02:00
Sönke Ludwig
2777b0a6ff
Fix FileDescriptorEvent constructor to adhere to the given event mask.
2017-07-29 13:32:27 +02:00
Sönke Ludwig
a60828d6da
Mark more classes as final.
2017-07-23 15:04:11 +02:00
Sönke Ludwig
59ac459cdf
Mark all synchronization classes final.
...
Those classes are not meant as being derived from.
2017-07-23 14:57:48 +02:00
Sönke Ludwig
2ba6c2eca1
Bump version number.
2017-07-20 18:50:40 +02:00
Sönke Ludwig
f81c9175df
Mention that TCPListenOptions.distribute is deprecated.
2017-07-20 18:48:08 +02:00
Sönke Ludwig
be0de0a733
Add assertions for uninitialized LocalManualEvents.
2017-07-20 16:52:35 +02:00
Sönke Ludwig
a6eeae97f3
Fix DirectoryWatcher's creation of its LocalManualEvent.
2017-07-20 16:52:34 +02:00
Sönke Ludwig
f6736d13ab
Add test that reproduces the LocalManualEvent copy bug.
2017-07-20 16:14:47 +02:00
Sönke Ludwig
100dfc30ee
Add test that triggers the former bug in ThreadLocalWaiter.emit() and ensures FIFO emit order.
2017-07-20 16:10:18 +02:00
Sönke Ludwig
a4b36f08d3
Fix multiple issues in (Local)ManualEvent.
...
- Copying LocalManualEvent now works correctly, using reference counting
- ManualEvent correctly pins the reference to the thread-local waiter until it has finished emitting it
- ThreadLocalWaiter uses a doubly-linked list to manage task waiters (more efficient deletion, FIFO trigger order)
- Fixed a bug in ThreadLocalWaiter.emit() where the head element of the iterated list might already have stopped waiting, resulting in an invocation of a dangling TaskWaiter pointer
2017-07-20 15:57:44 +02:00
Sönke Ludwig
19db7732e6
Add nothrow annotations.
2017-07-20 13:36:27 +02:00
Sönke Ludwig
536fa09780
Add helper module with intrusive singly and doubly linked lists.
2017-07-20 13:34:39 +02:00
Sönke Ludwig
cfb4f83113
Add makeGCSafe/disposeGCSafe as GC safe variants of make/dispose.
...
If necessary, these will call GC.addRange/GC.removeRange to avoid dangling GC references.
2017-07-20 13:34:12 +02:00
Sönke Ludwig
4bccf6fcb5
Use StackSList for ThreadLocalWaiter and add simple loop detection.
...
This will have to be adjusted to use a circular list with the possibility to insert a pivot element, so that consumption of waiters is safe in all cases (see the comment at 1265).
2017-07-19 14:54:33 +02:00
Sönke Ludwig
d39bbf19c0
Avoid extra exception and allow toString of unspecified NetworkAddress values.
2017-07-19 14:50:20 +02:00
The Dlang Bot
c62f07d257
Merge pull request #24 from vibe-d/error_handling
...
Use abort() in case of uncaught Error exceptions.
merged-on-behalf-of: Sönke Ludwig <s-ludwig@users.noreply.github.com>
2017-07-19 10:50:25 +02:00
Sönke Ludwig
7f050af455
Merge pull request #21 from wilzbach/trailing-whitespace
...
Remove all trailing whitespace + add check
2017-07-19 09:20:19 +02:00
Sönke Ludwig
fb1518a7d6
remove more white space
2017-07-19 00:40:24 +02:00
Sönke Ludwig
bfc6b89ca4
Use abort() in case of uncaught Error exceptions.
...
Fixes "dwarfeh(224) fatal error" that are suspected to be related to occasional infinite loops.
2017-07-19 00:11:12 +02:00
Sönke Ludwig
3d1175e821
Fix InterfaceProxy when used with class instances.
2017-07-19 00:10:39 +02:00
Sönke Ludwig
fcf98c2016
Merge branch 'master' into trailing-whitespace
2017-07-19 00:08:33 +02:00
Sönke Ludwig
d7b2173cb3
Implement TCPListener.stopListening and fix the vibe.core.net.1726 test.
...
The test fix follows the fix in the vibe.d repository: rejectedsoftware/vibe.d#f960427e5974c176c58b516647895a2af4ea181b
2017-07-18 11:55:39 +02:00
Sönke Ludwig
e3492bab06
Update change log and bump version number.
2017-07-16 22:29:45 +02:00
Sönke Ludwig
4f69b1eaf3
Add setTaskCreationCallback() for better remote debugger integration.
2017-07-16 22:07:59 +02:00
Sönke Ludwig
719c62d6c9
Fix TLS initialization condition.
2017-07-16 00:08:07 +02:00
Sönke Ludwig
7efb496208
Fix double-free of ThreadLocalWaiter in ManualEvent.
...
Also adds assertions and a randomized multi-thread test to rule out similar issues with a higher confidence.
2017-07-15 18:16:13 +02:00
Sönke Ludwig
254d91dcdf
Improve error message.
2017-07-15 10:12:52 +02:00
Sönke Ludwig
87296bb1e4
Fix compilation error for VibeIdleCollect.
2017-07-10 19:46:16 +02:00