This loop here:
|
Zip::from(&slice1).and(&slice2).for_each(|&i, &j| { |
A straightforward attempt doesn't pass the compiler because each thread needs to have mutable references to two rows of the array being modified. We know that no two threads will have access to the same rows, but the compiler can't tell.