MUTEXロックについて教えて下さい。

ある共用データを書き込む処理をする、スレッドAと、
共用データを読むだけの処理をするスレッドBがあるとします。
スレッドAでは共用データを書き込む際、MUTEXロックをかけておきます。
スレッドBでは共用データを読むだけなので、MUTEXロックは必要ないのでしょうか?
スレッドBでロックが必要な場合、待ち状態になると思うのですが、待たないよう
にする方法はありますか?