何個もオブジェクトを作って、それらに親子関係を設けて木構造をつくりました。
そのオブジェクトの中には、子が親の親子関係を変更させるような処理(ちょうどwindowsなどでフォルダごと移動のような)をもつものもいます。
で、そのような動きをするオブジェクト(作動obj)を根から探し、実行させるため、
serch(){
while(true){
木を上から順番に調査
分岐点を発見
if ( 分岐点は作動objだった )
作動
else
スレッドスタート}}
run(){
serch() }

のような感じで再起的?にスレッドを用いました。
しかし、作動objが動いてる最中に、ほかのスレッドで同時に作動がおきたり、また作動させてしまったので、そこには何もなかったり・・、
などといった矛盾が生じてくると思われるため、作動objを発見と同時に、同時に起こっている処理を一時停止させたいのですが、どのような方法があるでしょうか?
長々と失礼しました。