- 24 Apr, 2018 1 commit
-
-
Kenton Varda authored
-
- 21 Apr, 2018 2 commits
-
-
Kenton Varda authored
-
Kenton Varda authored
-
- 18 Apr, 2018 3 commits
-
-
Kenton Varda authored
-
Kenton Varda authored
-
Kenton Varda authored
This lets you construct an AsyncInputStream / AsyncOutputStream pair that operates entirely within userspace, rather than pushing through a kernel-level pipe. This is far more efficient, avoiding system calls and reducing copies. The pipe does not buffer at all. Instead, it waits for both a read() and a write() call to be active at the same time, and then it fulfills one with the other. This implementation also optimizes pumps. Imagine the situation: you create a pipe; you call pumpTo() on the write end to pump it to some other; then you write to the write end of the pipe. In this case, the write will *directly* call the target stream to which the pipe is being pumped. Hence, adding daisy-chained pipes on top of a final output stream does not incur additional copies of the data. Similarly, tryPumpFrom() is optimized on the read end.
-
- 23 Feb, 2018 1 commit
-
-
Kenton Varda authored
-
- 26 Jan, 2018 1 commit
-
-
Kenton Varda authored
Unfortunately TCP does not always distinguish between dirty connection failure and clean connection shutdown. In practice, though, "Premature EOF" errors on streams basically always appear to be due to disconnects (including when the peer crashes).
-
- 20 Nov, 2017 1 commit
-
-
Davide Italiano authored
-
- 23 Sep, 2017 1 commit
-
-
Kenton Varda authored
-
- 22 Sep, 2017 1 commit
-
-
Kenton Varda authored
This un-breaks code which previously relied upon an implicit cast from AutoCloseFd to int to call the non-ownership-passing versions of the methods.
-
- 21 Sep, 2017 2 commits
-
-
Kenton Varda authored
-
Kenton Varda authored
This allows a lot of nice design patterns, and might later the the basis for capnp 3-party handoff within a machine.
-
- 15 Sep, 2017 3 commits
-
-
Kenton Varda authored
-
Kenton Varda authored
-
Kenton Varda authored
-
- 14 Sep, 2017 2 commits
-
-
Kenton Varda authored
-
Kenton Varda authored
-
- 12 Sep, 2017 2 commits
-
-
Kenton Varda authored
-
Kenton Varda authored
-
- 02 Feb, 2017 1 commit
-
-
Harris Hancock authored
-
- 24 Jan, 2017 3 commits
-
-
Harris Hancock authored
-
Kenton Varda authored
- AsyncInputStream::tryGetLength() can report the amount of data the stream will produce. Useful for implementing HTTP Content-Length header. - AsyncInputStream::pumpTo() copies data from an input stream to an output stream, using double-dispatch to find an optimal approach.
-
Kenton Varda authored
-
- 22 Jan, 2017 2 commits
-
-
Kenton Varda authored
Re-introduce async-io.c++ containing just the default implementations of methods on the abstract interfaces.
-
Kenton Varda authored
Rename async-io.c++ to async-io-unix.c++, in preparation for factoring out common bits from async-io-win32.c++.
-
- 01 Dec, 2016 1 commit
-
-
Kenton Varda authored
-
- 12 Nov, 2016 1 commit
-
-
Kenton Varda authored
The implementation used by AsyncStreamFd was simply calling the general tryRead(), so why not?
-
- 07 Nov, 2016 3 commits
-
-
Kenton Varda authored
-
Kenton Varda authored
-
Kenton Varda authored
Memory leak is due to compiler bug. See: http://gcc.gnu.org/bugzilla/show_bug.cgi?id=33799 http://llvm.org/bugs/show_bug.cgi?id=12286
-
- 29 Jul, 2016 1 commit
-
-
Vitali Lovich authored
Add missing include when building on Linux Discovered trying to build on Android using CMake. UIO_MAXIOV is only exported by the linux/uio.h header which was never included. Not sure how normal Linux builds work. Add missing reinterpret cast from const void* to const byte*. Remove -pthread compile flag when building under Android. ANDROID cmake variable exported by android-cmake project.
-
- 06 Sep, 2015 1 commit
-
-
Steven Dee authored
Short-term fix for #220.
-
- 03 Jul, 2015 1 commit
-
-
Steven Dee authored
Fixes #221.
-
- 16 May, 2015 1 commit
-
-
Tom Lee authored
-
- 09 May, 2015 1 commit
-
-
Tom Lee authored
Fixes a build error on GNU/Hurd.
-
- 19 Feb, 2015 1 commit
-
-
Kenton Varda authored
-
- 18 Feb, 2015 1 commit
-
-
Jason Paryani authored
This is analagous to shutdownWrite, but for the read end of the stream
-
- 29 Dec, 2014 1 commit
-
-
Kenton Varda authored
-
- 12 Dec, 2014 1 commit
-
-
Kenton Varda authored
-