aboutsummaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
-rw-r--r--OpenSim/Framework/Servers/HttpServer/BaseHttpServer.cs3
-rw-r--r--OpenSim/Framework/Servers/HttpServer/PollServiceRequestManager.cs8
2 files changed, 7 insertions, 4 deletions
diff --git a/OpenSim/Framework/Servers/HttpServer/BaseHttpServer.cs b/OpenSim/Framework/Servers/HttpServer/BaseHttpServer.cs
index eb7c578..96a030b 100644
--- a/OpenSim/Framework/Servers/HttpServer/BaseHttpServer.cs
+++ b/OpenSim/Framework/Servers/HttpServer/BaseHttpServer.cs
@@ -1805,6 +1805,7 @@ namespace OpenSim.Framework.Servers.HttpServer
1805 1805
1806 // Long Poll Service Manager with 3 worker threads a 25 second timeout for no events 1806 // Long Poll Service Manager with 3 worker threads a 25 second timeout for no events
1807 m_PollServiceManager = new PollServiceRequestManager(this, 3, 25000); 1807 m_PollServiceManager = new PollServiceRequestManager(this, 3, 25000);
1808 m_PollServiceManager.Start();
1808 HTTPDRunning = true; 1809 HTTPDRunning = true;
1809 1810
1810 //HttpListenerContext context; 1811 //HttpListenerContext context;
@@ -1855,7 +1856,7 @@ namespace OpenSim.Framework.Servers.HttpServer
1855 HTTPDRunning = false; 1856 HTTPDRunning = false;
1856 try 1857 try
1857 { 1858 {
1858// m_PollServiceManager.Stop(); 1859 m_PollServiceManager.Stop();
1859 1860
1860 m_httpListener2.ExceptionThrown -= httpServerException; 1861 m_httpListener2.ExceptionThrown -= httpServerException;
1861 //m_httpListener2.DisconnectHandler = null; 1862 //m_httpListener2.DisconnectHandler = null;
diff --git a/OpenSim/Framework/Servers/HttpServer/PollServiceRequestManager.cs b/OpenSim/Framework/Servers/HttpServer/PollServiceRequestManager.cs
index a5380c1..ef35886 100644
--- a/OpenSim/Framework/Servers/HttpServer/PollServiceRequestManager.cs
+++ b/OpenSim/Framework/Servers/HttpServer/PollServiceRequestManager.cs
@@ -66,7 +66,10 @@ namespace OpenSim.Framework.Servers.HttpServer
66 m_server = pSrv; 66 m_server = pSrv;
67 m_WorkerThreadCount = pWorkerThreadCount; 67 m_WorkerThreadCount = pWorkerThreadCount;
68 m_workerThreads = new Thread[m_WorkerThreadCount]; 68 m_workerThreads = new Thread[m_WorkerThreadCount];
69 }
69 70
71 public void Start()
72 {
70 //startup worker threads 73 //startup worker threads
71 for (uint i = 0; i < m_WorkerThreadCount; i++) 74 for (uint i = 0; i < m_WorkerThreadCount; i++)
72 { 75 {
@@ -91,7 +94,6 @@ namespace OpenSim.Framework.Servers.HttpServer
91 1000 * 60 * 10); 94 1000 * 60 * 10);
92 } 95 }
93 96
94
95 private void ReQueueEvent(PollServiceHttpRequest req) 97 private void ReQueueEvent(PollServiceHttpRequest req)
96 { 98 {
97 if (m_running) 99 if (m_running)
@@ -142,14 +144,14 @@ namespace OpenSim.Framework.Servers.HttpServer
142 } 144 }
143 } 145 }
144 146
145 ~PollServiceRequestManager() 147 public void Stop()
146 { 148 {
147 m_running = false; 149 m_running = false;
148// m_timeout = -10000; // cause all to expire 150// m_timeout = -10000; // cause all to expire
149 Thread.Sleep(1000); // let the world move 151 Thread.Sleep(1000); // let the world move
150 152
151 foreach (Thread t in m_workerThreads) 153 foreach (Thread t in m_workerThreads)
152 Watchdog.AbortThread(t.ManagedThreadId); 154 Watchdog.AbortThread(t.ManagedThreadId);
153 155
154 try 156 try
155 { 157 {