Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/nodejs/node.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFedor Indutny <fedor.indutny@gmail.com>2014-01-29 02:48:10 +0400
committerFedor Indutny <fedor.indutny@gmail.com>2014-01-29 02:49:03 +0400
commit9836a4eeda1e2d43aad0923f1f72b364792629bc (patch)
treef9a43115eaca3a49f83c910d20ea363bef3b2b29 /benchmark/net
parenteaf76648a6ba05932465fdb2478a16ca4b6c17a6 (diff)
stream_wrap: use `uv_try_write` where possible
Use `uv_try_write` for string and buffer writes, thus avoiding to do allocations and copying in some of the cases.
Diffstat (limited to 'benchmark/net')
-rw-r--r--benchmark/net/tcp-raw-pipe.js2
-rw-r--r--benchmark/net/tcp-raw-s2c.js9
2 files changed, 8 insertions, 3 deletions
diff --git a/benchmark/net/tcp-raw-pipe.js b/benchmark/net/tcp-raw-pipe.js
index 91c69e9b6c9..bda683985d4 100644
--- a/benchmark/net/tcp-raw-pipe.js
+++ b/benchmark/net/tcp-raw-pipe.js
@@ -51,7 +51,7 @@ function server() {
if (nread < 0)
fail(nread, 'read');
- var writeReq = {};
+ var writeReq = { async: false };
err = clientHandle.writeBuffer(writeReq, buffer);
if (err)
diff --git a/benchmark/net/tcp-raw-s2c.js b/benchmark/net/tcp-raw-s2c.js
index 6fb65685272..500be1b72bb 100644
--- a/benchmark/net/tcp-raw-s2c.js
+++ b/benchmark/net/tcp-raw-s2c.js
@@ -68,7 +68,7 @@ function server() {
write();
function write() {
- var writeReq = { oncomplete: afterWrite };
+ var writeReq = { async: false, oncomplete: afterWrite };
var err;
switch (type) {
case 'buf':
@@ -82,8 +82,13 @@ function server() {
break;
}
- if (err)
+ if (err) {
fail(err, 'write');
+ } else if (!writeReq.async) {
+ process.nextTick(function() {
+ afterWrite(null, clientHandle, writeReq);
+ });
+ }
}
function afterWrite(err, handle, req) {