Browse Source

停止服务时马上停止http侦听

shuiping150 6 months ago
parent
commit
aa73714040
2 changed files with 13 additions and 3 deletions
  1. 8 3
      JLHHJSvr/JLHHJSvr.cs
  2. 5 0
      JLHHJSvr/LJLib.HttpServer/LJHttpServer.cs

+ 8 - 3
JLHHJSvr/JLHHJSvr.cs

@@ -18,6 +18,7 @@ namespace JLHHJSvr
     partial class JLHHJSvr : ServiceBase
     {
         private TcpListener _tcpListener = null;
+        private LJHttpServer _httpSvr = null;
         private static bool running = false;
 
         public JLHHJSvr()
@@ -95,15 +96,19 @@ namespace JLHHJSvr
         protected override void OnStop()
         {
             running = false;
+            if (_httpSvr != null)
+            {
+                _httpSvr.Stop();
+            }
         }
         private void startHttpListener(int port)
         {
 #if DEBUG
-            var httpServer = new SimpleHttpServer(port, GlobalVar.server, new GlobalVar.ParkFileModel());
+            _httpSvr = new SimpleHttpServer(port, GlobalVar.server, new GlobalVar.ParkFileModel());
 #else
-            var httpServer = new SimpleHttpServer(port, GlobalVar.server, new GlobalVar.ParkFileModel());
+            _httpSvr = new SimpleHttpServer(port, GlobalVar.server, new GlobalVar.ParkFileModel());
 #endif
-            httpServer.Listen();
+            _httpSvr.Listen();
         }
     }
 }

+ 5 - 0
JLHHJSvr/LJLib.HttpServer/LJHttpServer.cs

@@ -65,6 +65,11 @@ namespace LJLib.HttpServer
             });
         }
 
+        public void Stop()
+        {
+            is_active = false;
+        }
+
         public abstract void HandleGetRequest(LJHttpProcessor p);
         public abstract void HandlePostRequest(LJHttpProcessor p, StreamReader inputData);
     }