Size: a a a

2021 June 30

Е

Евгений in dlang.ru
А самый первый shared_ptr - это владелец данных?
источник

EP

Egor Pugin in dlang.ru
из шаред птр можно взять владение, только если он один , и вызвать release()
источник

EP

Egor Pugin in dlang.ru
вот тут уже надо у всех шаред птров релиз вызывать
источник

МВ

Макс Воробьев... in dlang.ru
владелец - объект внутри шаред_птр. сами шареды только предоставляют к нему доступ и меняют его счетчики
источник

Е

Евгений in dlang.ru
Еще раз вопрос экспертам в терминологии:
Самый первый shared_ptr - это владелец данных?
источник

EP

Egor Pugin in dlang.ru
нет
источник

Е

Евгений in dlang.ru
Лол :)
источник

EP

Egor Pugin in dlang.ru
всё множество этих шаред птров и есть владелец. А вот отдельно каждый это совместный владелец
источник

МВ

Макс Воробьев... in dlang.ru
вот сейчас ты всех запутал
источник

Е

Евгений in dlang.ru
Прямо как в СССР. Все мы единые владельцы недр нашей страны!
источник

EP

Egor Pugin in dlang.ru
наоборот теперь всё видно, где единственный владелец, а где совместный, и в чём разница
источник

Е

Евгений in dlang.ru
Но каждые по отдельности не владелец.
источник

EP

Egor Pugin in dlang.ru
по отдельности они совместные владельцы "shared ownership"
источник

Е

Евгений in dlang.ru
Прикол в том, что владалец shared_ptr вообще ничего может не знать о других владельцах.
источник

EP

Egor Pugin in dlang.ru
да
источник

EP

Egor Pugin in dlang.ru
нужно именно понимать, что только множество шаред птров на один адрес и есть владелец
источник

EP

Egor Pugin in dlang.ru
и поэтому правило "один владелец" не нарушается
источник

Е

Евгений in dlang.ru
Вледелец - это переменная.
источник

МВ

Макс Воробьев... in dlang.ru
владелец - это объект
источник

МВ

Макс Воробьев... in dlang.ru
который ответственный за освобождение ресурсов
источник