Visitorを実装するのが面倒臭いというのももちろんあるけど、
ああいうAPIの一番の問題はスレッドをブロックしやがること
処理を一時中断するにはいちいち別のスレッドを起動しなきゃいけない