From: Jon W. (ODE) <hpl...@mi...> - 2007-06-18 20:40:05
|
ODE is not thread safe. You can only manipulate objects when you know that the world collision/simulation isn't running. ODE does not have any known bugs in memory management. If you need to manipulate objects, then you should double-buffer the state, and pick up any requested changes before you call collide/step the next time in the simulation thread. Cheers, / h+ Chris Spencer wrote: > I'm unable to run a small ODE simulation for more than a couple > minutes before ODE crashes with the error: > > ODE INTERNAL ERROR 2: invalid operation for locked space in dGeomMoved() > > Is this caused by ODE's buggy memory management, or is it something > I'm doing? I'm manipulating ODE objects in a separate thread from the > one running the ODE simulation. Could that be causing the error? What > would be the best way to update a simulation from multiple threads > without having to pause the simulation? > > |