mirror of
https://github.com/opensim/opensim.git
synced 2026-08-07 09:45:47 +08:00
change llclient async udp packets processing. Removed the shared Jobengine that made only one thread do some packets for all users, and removed the FireAndForget, so each user could issue a unlimited number of threads. Added a new JobEngine per client, so each gets at most one thread,and that thread can be released if iddle (for 5 seconds )
This commit is contained in:
@@ -414,7 +414,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
|
||||
/// Queue some low priority but potentially high volume async requests so that they don't overwhelm available
|
||||
/// threadpool threads.
|
||||
/// </summary>
|
||||
public JobEngine IpahEngine { get; protected set; }
|
||||
// public JobEngine IpahEngine { get; protected set; }
|
||||
|
||||
/// <summary>
|
||||
/// Run queue empty processing within a single persistent thread.
|
||||
@@ -527,7 +527,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
|
||||
{
|
||||
StartInbound();
|
||||
StartOutbound();
|
||||
IpahEngine.Start();
|
||||
// IpahEngine.Start();
|
||||
OqrEngine.Start();
|
||||
|
||||
m_elapsedMSSinceLastStatReport = Environment.TickCount;
|
||||
@@ -572,7 +572,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
|
||||
m_log.Info("[LLUDPSERVER]: Shutting down the LLUDP server for " + Scene.Name);
|
||||
base.StopOutbound();
|
||||
base.StopInbound();
|
||||
IpahEngine.Stop();
|
||||
// IpahEngine.Stop();
|
||||
OqrEngine.Stop();
|
||||
}
|
||||
|
||||
@@ -691,12 +691,12 @@ namespace OpenSim.Region.ClientStack.LindenUDP
|
||||
|
||||
Scene = (Scene)scene;
|
||||
m_location = new Location(Scene.RegionInfo.RegionHandle);
|
||||
|
||||
/*
|
||||
IpahEngine
|
||||
= new JobEngine(
|
||||
string.Format("Incoming Packet Async Handling Engine ({0})", Scene.Name),
|
||||
"INCOMING PACKET ASYNC HANDLING ENGINE");
|
||||
|
||||
*/
|
||||
OqrEngine
|
||||
= new JobEngine(
|
||||
string.Format("Outgoing Queue Refill Engine ({0})", Scene.Name),
|
||||
@@ -781,7 +781,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
|
||||
MeasuresOfInterest.AverageChangeOverTime,
|
||||
stat => stat.Value = GetTotalQueuedOutgoingPackets(),
|
||||
StatVerbosity.Info));
|
||||
|
||||
/*
|
||||
StatsManager.RegisterStat(
|
||||
new Stat(
|
||||
"IncomingPacketAsyncRequestsWaiting",
|
||||
@@ -794,7 +794,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
|
||||
MeasuresOfInterest.None,
|
||||
stat => stat.Value = IpahEngine.JobsWaiting,
|
||||
StatVerbosity.Debug));
|
||||
|
||||
*/
|
||||
StatsManager.RegisterStat(
|
||||
new Stat(
|
||||
"OQRERequestsWaiting",
|
||||
|
||||
Reference in New Issue
Block a user