diff options
Diffstat (limited to 'OpenSim/Region/Physics/BulletSPlugin/BSScene.cs')
-rw-r--r-- | OpenSim/Region/Physics/BulletSPlugin/BSScene.cs | 15 |
1 files changed, 12 insertions, 3 deletions
diff --git a/OpenSim/Region/Physics/BulletSPlugin/BSScene.cs b/OpenSim/Region/Physics/BulletSPlugin/BSScene.cs index f7317c0..a46c241 100644 --- a/OpenSim/Region/Physics/BulletSPlugin/BSScene.cs +++ b/OpenSim/Region/Physics/BulletSPlugin/BSScene.cs | |||
@@ -32,6 +32,7 @@ using System.Runtime.InteropServices; | |||
32 | using System.Text; | 32 | using System.Text; |
33 | using System.Threading; | 33 | using System.Threading; |
34 | using OpenSim.Framework; | 34 | using OpenSim.Framework; |
35 | using OpenSim.Framework.Monitoring; | ||
35 | using OpenSim.Region.Framework; | 36 | using OpenSim.Region.Framework; |
36 | using OpenSim.Region.CoreModules; | 37 | using OpenSim.Region.CoreModules; |
37 | using Logging = OpenSim.Region.CoreModules.Framework.Statistics.Logging; | 38 | using Logging = OpenSim.Region.CoreModules.Framework.Statistics.Logging; |
@@ -286,9 +287,13 @@ public sealed class BSScene : PhysicsScene, IPhysicsParameters | |||
286 | if (BSParam.UseSeparatePhysicsThread) | 287 | if (BSParam.UseSeparatePhysicsThread) |
287 | { | 288 | { |
288 | // The physics simulation should happen independently of the heartbeat loop | 289 | // The physics simulation should happen independently of the heartbeat loop |
289 | m_physicsThread = new Thread(BulletSPluginPhysicsThread); | 290 | m_physicsThread |
290 | m_physicsThread.Name = BulletEngineName; | 291 | = Watchdog.StartThread( |
291 | m_physicsThread.Start(); | 292 | BulletSPluginPhysicsThread, |
293 | string.Format("{0} ({1})", BulletEngineName, RegionName), | ||
294 | ThreadPriority.Normal, | ||
295 | true, | ||
296 | true); | ||
292 | } | 297 | } |
293 | } | 298 | } |
294 | 299 | ||
@@ -856,7 +861,11 @@ public sealed class BSScene : PhysicsScene, IPhysicsParameters | |||
856 | // TODO. | 861 | // TODO. |
857 | DetailLog("{0},BulletSPluginPhysicsThread,longerThanRealtime={1}", BSScene.DetailLogZero, simulationTimeVsRealtimeDifferenceMS); | 862 | DetailLog("{0},BulletSPluginPhysicsThread,longerThanRealtime={1}", BSScene.DetailLogZero, simulationTimeVsRealtimeDifferenceMS); |
858 | } | 863 | } |
864 | |||
865 | Watchdog.UpdateThread(); | ||
859 | } | 866 | } |
867 | |||
868 | Watchdog.RemoveThread(); | ||
860 | } | 869 | } |
861 | 870 | ||
862 | #endregion // Simulation | 871 | #endregion // Simulation |