i think all the modern jvm's will in worst case run the code twice which may well be cheaper than synching ... no strong feelings