net/server.lua

changeset 989
ec239c044f31
parent 962
872f5d85636e
child 994
8fd4efc3ed96
--- a/net/server.lua	Sun Apr 12 02:53:50 2009 +0100
+++ b/net/server.lua	Sun Apr 12 02:54:45 2009 +0100
@@ -724,8 +724,16 @@
     return _readtraffic, _sendtraffic, _readlistlen, _sendlistlen, _timerlistlen
 end
 
+local dontstop = true;
+
+setquitting = function (quit)
+	dontstop = not quit;
+	return;
+end
+
 loop = function( )    -- this is the main loop of the program
-    while true do
+    while dontstop do
+        out_put(tostring(dontstop))
         local read, write, err = socket_select( _readlist, _sendlist, _selecttimeout )
         for i, socket in ipairs( write ) do    -- send data waiting in writequeues
             local handler = _socketlist[ socket ]
@@ -760,6 +768,7 @@
         socket_sleep( _sleeptime )    -- wait some time
         --collectgarbage( )
     end
+    return "quitting"
 end
 
 --// EXPERIMENTAL //--
@@ -833,7 +842,7 @@
     addtimer = addtimer,
     addserver = addserver,
     getsettings = getsettings,
+    setquitting = setquitting,
     removeserver = removeserver,
     changesettings = changesettings,
-
 }

mercurial