В прошлогоднем посте в блоге про пакет unique упомянули о некоторых новых функциях, которые тогда находились на стадии обсуждения. И теперь с Go 1.24 эти функции доступны всем разработчикам на Go.
Речь идёт о runtime.AddCleanup, которая добавляет функцию в очередь на выполнение, когда объект становится недоступным, и о типе weak.Pointer, который позволяет безопасно ссылаться на объект, не мешая сборщику мусора его удалить. Вместе эти две функции дают достаточно возможностей, чтобы создать свой собственный аналог пакета unique! Давайте разберёмся, чем они полезны и когда их стоит использовать.
18.03.2025
Похожее
07.07.2026
WAL-RUS
ClickHouse Cloud переписали утилиту для бэкапов и WAL-архивирования Postgres с G...
06.07.2026
Профилирование
Статья разбирает пять встроенных профилировщиков в Go (CPU, heap, block, mutex и...
02.07.2026
6 популярных кешей
Автор сравнивает шесть подходов к реализации потокобезопасного in-memory кеша в ...
29.06.2026
Детектор утечек горутин
В Go 1.27 в runtime/pprof добавляется встроенный детектор утечек горутин, принят...