Closed apolukhin closed 3 years ago
yndx-antoshkka, 10 апреля 2018, 15:50 Какие именно умные указатели вы хотите увидеть в стандартной библиотеке?
thread_local разве не лучше чем boost::thread_specific_ptr?
ru.night.beast, 10 апреля 2018, 16:10 yndx-antoshkka, (голос из зала) linked_ptr, cow_ptr, intrusive_ptr
Виктор Губин, 10 апреля 2018, 16:27 yndx-antoshkka, thread_local это не совсем то-же что и thread_specific_ptr
thread_local http://en.cppreference.com/w/cpp/language/storage_duration
thread_specific_ptr https://www.boost.org/doc/libs/1_66_0/doc/html/thread/thread_local_storage.html
Второе можно получить используя первое.
Виктор Губин, 10 апреля 2018, 16:21 Простите, не boost::shared_ptr а boost::intrusive_ptr. (отредактировать сайт не дает :( )
yndx-antoshkka, 11 апреля 2018, 16:08 Обновлено 10 апреля 2018, 16:22
intrusive_ptr многие люди хотят.
Попробуйте набросать черновое предложение, следуя вот этой инструкции https://stdcpp.ru/podgotovka-predlozheniya-v-standart-c-instruktsiya
boost::thread_specific_ptr<T>
эквивалентен thread_local std::unique_ptr<T>
А вот над интрузивным указателем стоит поработать
На intrusive_ptr есть отдельный тикет #307 Закрываю этот в пользу #307
Перенос предложения: голоса +3, -0 Автор идеи: Виктор Губин
В стандартной библиотеке не хватает интеллектуального указателя с встроенным счетчиком ссылок (make_shared/enable_shared_from_this не совсем то) и Hazard pointer-ра. Однако они есть в Boost, и что если их перенести в стандартную библиотеку вслед за shared_ptr и weak_ptr ?
Boost не всегда есть под рукой, к тому-же в есть ситуации когда вообще нельзя использовать Boost или можно только часть библиотек.
smart_pointer и thread уже включены в стандартную библиотеку, почему-бы ее не расширить проверенными решениями.