Anti-pattern: thread-safe data types

Designing data types to be thread-safe (for example by having it contain its own mutex) is an anti-pattern.

This is because: