ubode try remove a legacy lock, that is nasty
parent
3897774424
commit
81bb620d64
|
@ -2665,7 +2665,7 @@ Console.WriteLine(" JointCreateFixed");
|
||||||
}
|
}
|
||||||
*/
|
*/
|
||||||
|
|
||||||
SafeNativeMethods.AllocateODEDataForThread(0U);
|
SafeNativeMethods.AllocateODEDataForThread(0);
|
||||||
|
|
||||||
_position.X = Util.Clip(_position.X, 0.5f, _parent_scene.WorldExtents.X - 0.5f);
|
_position.X = Util.Clip(_position.X, 0.5f, _parent_scene.WorldExtents.X - 0.5f);
|
||||||
_position.Y = Util.Clip(_position.Y, 0.5f, _parent_scene.WorldExtents.Y - 0.5f);
|
_position.Y = Util.Clip(_position.Y, 0.5f, _parent_scene.WorldExtents.Y - 0.5f);
|
||||||
|
|
|
@ -124,7 +124,7 @@ namespace OpenSim.Region.PhysicsModule.ODE
|
||||||
/// /lib/x86_64-linux-gnu/libpthread.so.0(+0xfc60) [0x7f03c9849c60]
|
/// /lib/x86_64-linux-gnu/libpthread.so.0(+0xfc60) [0x7f03c9849c60]
|
||||||
/// .../opensim/bin/libode-x86_64.so(_Z12dCollideCCTLP6dxGeomS0_iP12dContactGeomi+0x92) [0x7f03b44bcf82]
|
/// .../opensim/bin/libode-x86_64.so(_Z12dCollideCCTLP6dxGeomS0_iP12dContactGeomi+0x92) [0x7f03b44bcf82]
|
||||||
/// </remarks>
|
/// </remarks>
|
||||||
internal static Object UniversalColliderSyncObject = new Object();
|
// internal static Object UniversalColliderSyncObject = new Object();
|
||||||
internal static Object SimulationLock = new Object();
|
internal static Object SimulationLock = new Object();
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
|
@ -498,6 +498,8 @@ namespace OpenSim.Region.PhysicsModule.ODE
|
||||||
|
|
||||||
public OdeScene(Scene pscene, IConfigSource psourceconfig, string pname, string pversion)
|
public OdeScene(Scene pscene, IConfigSource psourceconfig, string pname, string pversion)
|
||||||
{
|
{
|
||||||
|
SafeNativeMethods.AllocateODEDataForThread(~0U);
|
||||||
|
|
||||||
m_config = psourceconfig;
|
m_config = psourceconfig;
|
||||||
m_frameWorkScene = pscene;
|
m_frameWorkScene = pscene;
|
||||||
|
|
||||||
|
@ -878,7 +880,7 @@ namespace OpenSim.Region.PhysicsModule.ODE
|
||||||
{
|
{
|
||||||
int count;
|
int count;
|
||||||
|
|
||||||
lock (OdeScene.UniversalColliderSyncObject)
|
// lock (OdeScene.UniversalColliderSyncObject)
|
||||||
{
|
{
|
||||||
// We do this inside the lock so that we don't count any delay in acquiring it
|
// We do this inside the lock so that we don't count any delay in acquiring it
|
||||||
if (CollectStats)
|
if (CollectStats)
|
||||||
|
@ -2867,7 +2869,7 @@ namespace OpenSim.Region.PhysicsModule.ODE
|
||||||
tempTick = tempTick2;
|
tempTick = tempTick2;
|
||||||
}
|
}
|
||||||
|
|
||||||
lock(SimulationLock)
|
// lock(SimulationLock)
|
||||||
SafeNativeMethods.WorldQuickStep(world, ODE_STEPSIZE);
|
SafeNativeMethods.WorldQuickStep(world, ODE_STEPSIZE);
|
||||||
|
|
||||||
if (CollectStats)
|
if (CollectStats)
|
||||||
|
|
Loading…
Reference in New Issue