freeze in multithreading

I replaced the dynamical creation and removal of nodepaths during the run by creation of a sufficient number of nodepaths at the beginning of the run. Then, when a vehicle gets too far away, I call hide() and place it in a table for later use, and when a new one is needed I look up an existing nodepath from that pool, position it properly in the world and call show(). I ran that for hours and that seemed to solve the freeze problem. So, Its probably a case of generating geometry although I don’t use child threads, apart from the Cull/Draw multithreading.