殆どの場合、「ダメ」でしょう、作り方次第ですが
スレッド1が処理1を動作させる
スレッド2が処理2を動作させる
として、処理1が書き込んだ結果を処理2が書き潰す(処理1の効果は反映されない)という事が、大抵起きる
こんなチョンボを避けるには、例えば
処理1が「読みだして、変更して、結果を書き込む」を行いたいなら、
「読出し → 書き込み」までのブロックを独占する(排他処理する)必要がある
処理2が同じ部分を実行したいなら、「処理1が実行していない事を保証する」必要がある
「リエントラント」とか「スレッドセーフ」とか呼ばれるプログラミング手法で、プログラミングしてある必要がある