Я пытался найти ответ в течение некоторого времени, но я потерпел неудачу.
Предположим, что у нас есть shared_ptr, созданный из одного потока. Затем мы передаем этот shared_ptr в другие 2 потока (например, используя некоторую очередь). Таким образом, с этого момента есть 2 копии оригинала shared_ptr, указывающие на один и тот же необработанный указатель.
Оба потока владельца будут брать свои копии этого shared_ptr из очереди. Затем они передадут его в другой поток или уничтожат его.
Вопрос - это безопасно? Будет ли исходный указатель уничтожен правильно (не будет никакой гонки для счетчика?)

