データ競合を防ぐのは簡単で「multiple readers or single writer」を守れば防げる
どの言語でもそのような形になるようにプログラマーが解決する
ただしRust以外の言語はデータ競合があっても検出できずに競合を起こしたまま動いてしまいバグとなる

>>377
存在しない

>>378
vec!は回数分のcloneするだけ
そしてcloneはcapacityを保持しない
だからその0となる挙動は仕様通りで正しい
その3となる挙動にしたいなら例えば
Vec::from_iter((0..4).map(|_| Vec::with_capacity(3)));
あるいはrepeat_withでtake(4)