Lock and unlock

Can I use lock() more than once in a frame, I lock some nodes when I create my initial scene, then I unlock them when adding something and then lock them again afterwards, but I get warnings about the nodes already being locked. Do I have to wait a frame before I can lock them again? It seems like maybe the display lists don't completely delete or something. The warnings don't seem to indicate any issues, things display correctly as far as I can tell, and I don't seem to have the performance drop I'd see if I never locked anything at all.

I originally was only locking and unlocking a single node, at that time I didn't get any warnings. When I added a second node the trouble began. Both of these nodes are just below the root node, and are parallel, they aren't attached to each other so it shouldnt' be an issue of a subnode getting locked.

Are they sharednode/meshes?

Yes, you caught me. I take it the shared nodes are automatically locked?

If I wanted to, could I tell it not to lock them by default, so that I can apply a lock higher up the tree and be more efficient? I assume I could unlock them as I do them but I'd rather avoid the overhead of the automatic lock (I'm assuming that's what's happening).

With shared items, you want to lock certain things on the target itself and not the shared copy (I believe mesh data might be the only such item)  That's off the top of my head though, I may be a bit off.