Как стать автором
Обновить
0
0

Пользователь

Отправить сообщение

Go: справляемся с конфликтами при блокировках с помощью пакета Atomic

Время на прочтение3 мин
Количество просмотров11K

Эта статья берет за основу Go 1.14.

Go предоставляет механизмы синхронизации памяти, такие как канал (channel) или мьютекс (mutex ), которые помогают решать различные проблемы. Касательно разделяемой памяти, мьютекс защищает память от гонки данных. Однако, несмотря на существование двух типов мьютексов, в целях повышения производительности Go также предоставляет атомарные примитивы памяти в пакете atomic. Но давайте сначала вернемся к гонкам данных, прежде чем углубляться в решения.

Читать далее
Всего голосов 8: ↑7 и ↓1+6
Комментарии7

Golang-дайджест № 4  (1 – 30 апреля 2021)

Время на прочтение5 мин
Количество просмотров6.9K

Свежая подборка новостей и материалов

Интересное в этом выпуске

Видео с GopherCon Russia 2021, создание BitTorrent-клиента с нуля, набор инструментов для работы с API Apple/Mac, сетевой сканер ARP, TCP, UDP, ICMP

Приятного чтения!

Читать далее
Всего голосов 17: ↑16 и ↓1+15
Комментарии3

50 оттенков Go: ловушки, подводные камни и распространённые ошибки новичков

Время на прочтение44 мин
Количество просмотров212K


Go — простой и забавный язык. Но в нём, как и в любых других языках, есть свои подводные камни. И во многих из них сам Go не виноват. Одни — это естественное следствие прихода программистов из других языков, другие возникают из-за ложных представлений и нехватки подробностей. Если вы найдёте время и почитаете официальные спецификации, вики, почтовые рассылки, публикации в блогах и исходный код, то многие из подводных камней станут для вас очевидны. Но далеко не каждый так начинает, и это нормально. Если вы новичок в Go, статья поможет сэкономить немало часов, которые вы бы потратили на отладку кода. Мы будем рассматривать версии Go 1.5 и ниже.
Читать дальше →
Всего голосов 80: ↑76 и ↓4+72
Комментарии270

Информация

В рейтинге
Не участвует
Зарегистрирован
Активность