corrent implementation blockOtherThread/unblock logic

Atomic is not enough... use RW lock instead