OOP has no built-in facilities to deal with multi-threading.
It's orthogonal to it and that's a problem.
Thread safety can't be expressed or enforced and you can't grab a bunch of classes from somewhere and assume anything about their fitness for multi-threaded code.
Typically one has to carefully design a class for multi-threaded use. Reasoning about state inside objects then quickly becomes infeasible.
Thread safety can't be expressed or enforced and you can't grab a bunch of classes from somewhere and assume anything about their fitness for multi-threaded code.
Typically one has to carefully design a class for multi-threaded use. Reasoning about state inside objects then quickly becomes infeasible.