From Markus Gritsch <firstname.lastname@example.org>:
The problem without synchronization is that the visualization of a scene with much animation in it is "distorted", because during a visualization cycle some objects have their old position and some others already appear on their new location. For example I have a scene with some springs in it, each represented by a helix (curve). Because the whole spring is moving around quite fast, part of it has the old coordinates and the other part already appears at the new calculated ones.
Would it be possible to hav a function similar to visual.rate() which suspends the visualization thread and another to reactivate it? In this way it would be possible in the while loop to suspend it, do the calculations, activate it and suspend it again before doing the next cycle.
visual.stop() # suspend the visualization thread
visual.start() # resume the visualization thread