diff options
-rw-r--r-- | OpenSim/Region/CoreModules/Agent/Xfer/XferModule.cs | 30 |
1 files changed, 18 insertions, 12 deletions
diff --git a/OpenSim/Region/CoreModules/Agent/Xfer/XferModule.cs b/OpenSim/Region/CoreModules/Agent/Xfer/XferModule.cs index 41ce860..782e527 100644 --- a/OpenSim/Region/CoreModules/Agent/Xfer/XferModule.cs +++ b/OpenSim/Region/CoreModules/Agent/Xfer/XferModule.cs | |||
@@ -124,20 +124,26 @@ namespace OpenSim.Region.CoreModules.Agent.Xfer | |||
124 | double now = Util.GetTimeStampMS(); | 124 | double now = Util.GetTimeStampMS(); |
125 | if(now - lastTimeTick > 1750.0) | 125 | if(now - lastTimeTick > 1750.0) |
126 | { | 126 | { |
127 | inTimeTick = true; | ||
128 | |||
129 | //don't overload busy heartbeat | ||
130 | WorkManager.RunInThread( | ||
131 | delegate | ||
132 | { | ||
133 | transfersTimeTick(now); | ||
134 | expireFiles(now); | ||
135 | 127 | ||
128 | if(Transfers.Count == 0 && NewFiles.Count == 0) | ||
136 | lastTimeTick = now; | 129 | lastTimeTick = now; |
137 | inTimeTick = false; | 130 | else |
138 | }, | 131 | { |
139 | null, | 132 | inTimeTick = true; |
140 | "XferTimeTick"); | 133 | |
134 | //don't overload busy heartbeat | ||
135 | WorkManager.RunInThread( | ||
136 | delegate | ||
137 | { | ||
138 | transfersTimeTick(now); | ||
139 | expireFiles(now); | ||
140 | |||
141 | lastTimeTick = now; | ||
142 | inTimeTick = false; | ||
143 | }, | ||
144 | null, | ||
145 | "XferTimeTick"); | ||
146 | } | ||
141 | } | 147 | } |
142 | } | 148 | } |
143 | Monitor.Exit(timeTickLock); | 149 | Monitor.Exit(timeTickLock); |