0
0
mirror of https://github.com/nodejs/node.git synced 2024-11-29 23:16:30 +01:00
nodejs/benchmark/net
Anna Henningsen 0e7b61229a
src: refactor WriteWrap and ShutdownWraps
Encapsulate stream requests more:

- `WriteWrap` and `ShutdownWrap` classes are now tailored to the
  streams on which they are used. In particular, for most streams
  these are now plain `AsyncWrap`s and do not carry the overhead
  of unused libuv request data.
- Provide generic `Write()` and `Shutdown()` methods that wrap
  around the actual implementations, and make *usage* of streams
  easier, rather than implementing; for example, wrap objects
  don’t need to be provided by callers anymore.
- Use `EmitAfterWrite()` and `EmitAfterShutdown()` handlers to
  call the corresponding JS handlers, rather than always trying
  to call them. This makes usage of streams by other C++ code
  easier and leaner.

Also fix up some tests that were previously not actually testing
asynchronicity when the comments indicated that they would.

PR-URL: https://github.com/nodejs/node/pull/18676
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: Anatoli Papirovski <apapirovski@mac.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
2018-02-14 10:00:29 +01:00
..
net-c2s-cork.js benchmark: (net) use destructuring 2018-01-23 01:29:23 +01:00
net-c2s.js benchmark: (net) use destructuring 2018-01-23 01:29:23 +01:00
net-pipe.js benchmark: (net) use destructuring 2018-01-23 01:29:23 +01:00
net-s2c.js benchmark: (net) use destructuring 2018-01-23 01:29:23 +01:00
net-wrap-js-stream-passthrough.js benchmark: (net) use destructuring 2018-01-23 01:29:23 +01:00
tcp-raw-c2s.js src: refactor WriteWrap and ShutdownWraps 2018-02-14 10:00:29 +01:00
tcp-raw-pipe.js src: refactor WriteWrap and ShutdownWraps 2018-02-14 10:00:29 +01:00
tcp-raw-s2c.js src: refactor WriteWrap and ShutdownWraps 2018-02-14 10:00:29 +01:00