ref/unref for net.Socket net.Server dgram.Socket
authorTimothy J Fontaine <tjfontaine@gmail.com>
Fri, 13 Jul 2012 01:26:04 +0000 (21:26 -0400)
committerBert Belder <bertbelder@gmail.com>
Mon, 23 Jul 2012 16:31:30 +0000 (18:31 +0200)
lib/dgram.js
lib/net.js

index 7abd0c3..d05790c 100644 (file)
@@ -351,6 +351,17 @@ function onMessage(handle, slab, start, len, rinfo) {
 }
 
 
+Socket.prototype.ref = function() {
+  if (this._handle)
+    this._handle.ref();
+};
+
+
+Socket.prototype.unref = function() {
+  if (this._handle)
+    this._handle.unref();
+};
+
 // TODO share with net_uv and others
 function errnoException(errorno, syscall) {
   var e = new Error(syscall + ' ' + errorno);
index b4934e3..446b2a0 100644 (file)
@@ -716,6 +716,19 @@ Socket.prototype.connect = function(options, cb) {
 };
 
 
+Socket.prototype.ref = function() {
+  if (this._handle)
+    this._handle.ref();
+};
+
+
+Socket.prototype.unref = function() {
+  if (this._handle)
+    this._handle.unref();
+};
+
+
+
 function afterConnect(status, handle, req, readable, writable) {
   var self = handle.owner;
 
@@ -1095,6 +1108,16 @@ Server.prototype._setupSlave = function(socketList) {
   this._slaves.push(socketList);
 };
 
+Server.prototype.ref = function() {
+  if (this._handle)
+    this._handle.ref();
+};
+
+Server.prototype.unref = function() {
+  if (this._handle)
+    this._handle.unref();
+};
+
 
 // TODO: isIP should be moved to the DNS code. Putting it here now because
 // this is what the legacy system did.