Answer
Use synchronization, locks, atomic variables, and concurrent collections.
Avoid shared mutable state.
Design carefully for safe concurrent execution.
Avoid shared mutable state.
Design carefully for safe concurrent execution.