`noDelay` will immediately fire off data each time `socket.write()` is called.
`noDelay` defaults to `true`.
+Returns `socket`.
+
### socket.setKeepAlive([enable][, initialDelay])
Enable/disable keep-alive functionality, and optionally set the initial
initialDelay will leave the value unchanged from the default
(or previous) setting. Defaults to `0`.
+Returns `socket`.
+
### socket.address()
Returns the bound address, the address family name and port of the
if (!this._handle) {
this.once('connect',
enable ? this.setNoDelay : this.setNoDelay.bind(this, enable));
- return;
+ return this;
}
// backwards compatibility: assume true when `enable` is omitted
if (this._handle.setNoDelay)
this._handle.setNoDelay(enable === undefined ? true : !!enable);
+
+ return this;
};
Socket.prototype.setKeepAlive = function(setting, msecs) {
if (!this._handle) {
this.once('connect', this.setKeepAlive.bind(this, setting, msecs));
- return;
+ return this;
}
if (this._handle.setKeepAlive)
this._handle.setKeepAlive(setting, ~~(msecs / 1000));
+
+ return this;
};
var clientConnection = new net.Socket();
// send a keepalive packet after 1000 ms
// and make sure it persists
- clientConnection.setKeepAlive(true, 400);
+ var s = clientConnection.setKeepAlive(true, 400);
+ assert.ok(s instanceof net.Socket);
clientConnection.connect(common.PORT);
clientConnection.setTimeout(0);
// setNoDelay before the handle is created
// there is probably a better way to test this
- sock1.setNoDelay();
+ var s = sock1.setNoDelay();
+ assert.ok(s instanceof net.Socket);
sock1.connect(common.PORT);
sock1.on('end', function() {
assert.equal(callCount, 1);