Описание тега thread-safety

Фрагмент кода является потокобезопасным, если он управляет структурами данных только таким образом, чтобы обеспечить согласованное выполнение этого кода несколькими потоками. Код может быть потокобезопасным, условно безопасным (требуется взаимное исключение) или небезопасным (может безопасно использоваться только одним потоком).

Основные подходы к безопасности потоков включают повторный вход, локальное хранилище потока, взаимное исключение (блокировку), атомарные операции и неизменяемые объекты.