NB: Not necessary multithreading related.
For me it helped sometimes to set different breakpoints.
Sometimes evaluating the values changes them (e.g. reading iterator values).
Secondly your "false" breakpoints may inhibit parallelism and race conditions.