Аналитика Telegram-канала
Подписчики
4 196
Охват за 24 ч
292
ER за 24 ч
6,96%
Публикаций
2 614

Динамика подписчиков

7 дней 30 дней 6 месяцев Больше
1 ноя4 ноя7 ноя
Показаны последние 7 дней Больше истории →

Охваты публикаций

04.1104.1105.1105.1106.1106.11
67
Средний охват
79
Лучший результат
Показаны 6 публикаций — последние в канале Больше статистики →

Упоминания

878
Упоминаний
21
Из них репостов
408
Каналов
Нет примеров за последние 90 дней
Все упоминания

Последние посты

3 из 2 614 2 из 2 614
🤔 Что лежит в основе работы unordered_set, unordered_map и set, map? 1. Set и Map: основаны на сбалансированных бинарных деревьях, обычно красно-чёрных. Они поддерживают упорядоченность данных. 2. Unordered_set и Unordered_map: основаны на хеш-таблицах, обеспечивающих быструю вставку, удаление и поиск. 3. Основной принцип различия — структура данных: деревья для упорядоченности, хеш-таблицы для скорости. Ставь 👍 если знал ответ, 🔥 если нет Забирай 📚Базу знаний
ещё
79 0 6 ноя, 19:11
🤔 Можно использовать в контексте нескольких потоков Shared_ptr и потокобезопасный он или нет? Использование shared_ptr в многопоточном контексте требует определённой осторожности, поскольку он сам по себе имеет ограниченную потокобезопасность. Рассмотрим подробнее, что это значит и как можно безопасно использовать его в многопоточной среде. 🚩Потокобезопасность 🟠Безопасное копирование и удаление Стандарт C++ гарантирует, что операции копирования и удаления shared_ptr являются потокобезопасными в том смысле, что вы можете безопасно копировать и удалять разные экземпляры shared_ptr из разных потоков, даже если они указывают на один и тот же объект. 🟠Счётчик ссылок Модификации счётчика ссылок в нем (т.е. увеличение и уменьшение) являются атомарными операциями, что означает, что при изменении счётчика из разных потоков состояние счётчика останется консистентным и корректным. 🟠Ограничения потокобезопасности Не рекомендуется изменять сам объект, на который указывает shared_ptr, из нескольких потоков без дополнительной синхронизации, так как shared_ptr не предоставляет потокобезопасность для доступа к объекту. Если несколько потоков изменяют один и тот же shared_ptr (не копии), например, присваивают ему новые значения или обнуляют его, это должно синхронизироваться, так как стандартная библиотека не гарантирует безопасность таких операций без внешней синхронизации. 🚩Рекомендации для использования в многопоточной среде 🟠Избегайте разделять один и тот же `shared_ptr` между потоками Лучше дать каждому потоку собственную копию shared_ptr, что позволяет избежать конфликтов на запись. 🟠Синхронизируйте доступ к общему shared_ptr Если несколько потоков должны иметь доступ к одному и тому же shared_ptr, используйте мьютексы или другие механизмы синхронизации для защиты его при записи. 🟠Рассмотрите использование std::atomic<std::shared_ptr<T>> для C++20 и выше Эта оболочка предоставляет потокобезопасные операции на shared_ptr без необходимости явной синхронизации при изменении указателя. Ставь 👍 и забирай 📚 Базу знаний
ещё
51 0 6 ноя, 12:05
🤔 Сложность операций с vector и list Для vector добавление элемента в конец имеет сложность O(1) в среднем, но при перераспределении памяти — O(n). Удаление и вставка в произвольное место занимают O(n), так как элементы необходимо сдвигать. Для list добавление и удаление имеют сложность O(1), но доступ по индексу — O(n), так как требуется последовательный обход элементов. Ставь 👍 если знал ответ, 🔥 если нет Забирай 📚Базу знаний
ещё
72 1 5 ноя, 19:11
Больше постов

Продолжить анализ этого канала

  • История роста подписчиков
  • Просмотры и охваты публикаций
  • Кто упоминает канал и кого упоминает он
  • Похожие каналы и подбор для рекламы
Открыть аналитику
Демо до 14 дней