Исправления в языке Go для проблемы с циклами

Язык Go (golang) от Google достиг версии 1.22, в которой были внесены изменения в циклы for, включая решение проблемы, которая приводила к риску случайного обмена переменными цикла.

Выпущенную 6 февраля версию Go 1.22 можно загрузить и установить с сайта go.dev. Примечания к выпуску Go 1.22 можно найти на сайте проекта.

В Go 1.22 команда разработчиков Go устранила так называемую "загвоздку" с циклом for, которая приводила к случайному обмену переменными цикла. В Go 1.22 каждая итерация цикла создает новые переменные, чтобы избежать ошибок случайного обмена. Второе изменение заключается в том, что циклы for в Go теперь могут работать с целыми числами.

Также в Go1.22 оптимизация времени выполнения повышает производительность процессора на 1-3 % и снижает накладные расходы памяти для большинства программ на Go примерно на 1 %. Также улучшена девиртуализация в сборках с оптимизацией по профилю (PGO), что позволяет статически диспетчеризировать больше вызовов методов интерфейса. Большинство программ получат от 2 до 14 % прироста при включении PGO. PGO была представлена в Go 1.21, которая появилась в августе 2022 года.

Go 1.22 также привносит улучшения в стандартную библиотеку. Пакет math/rand/v2 обеспечивает более последовательный и чистый API и использует более качественные и быстрые алгоритмы генерации псевдослучайных чисел. Кроме того, шаблоны маршрутизации HTTP, используемые net/http.ServeMux, теперь принимают подстановочные знаки и методы.

В других разделах Go 1.22:

  • Команды Go в рабочих пространствах теперь могут использовать каталог поставщика, содержащий зависимости рабочего пространства.
  • Веб-интерфейс инструмента трассировки был обновлен в рамках работы по поддержке нового трассировщика, в результате чего было решено несколько проблем и улучшено удобство чтения различных подстраниц.
  • Поведение инструмента vet было изменено в соответствии с новой семантикой переменных цикла в Go 1.22. Кроме того, vet теперь сообщает о не отложенном вызове time.Since (t) внутри оператора отсрочки.
  • В macOS на 64-битной архитектуре инструментарий Go теперь по умолчанию генерирует позиционно-независимые исполняемые файлы.
  • В Go 1.22 добавлен экспериментальный порт на OpenBSD на big-endian 64-битной PowerPC.
Исправления в языке Go для проблемы с циклами
Понравилась новость? Тогда не забудь оставить свой комментарий.
А так же, добавь наш сайт в закладки (нажми Ctrl+D), не теряй нас.
08 февраля 2024 г.
83
Теги: Google , Go

Комментарии

Оставить комментарий:
* отправляя форму, я даю согласие на обработку персональных данных

Читайте еще

Решения Evinced для тестирования доступности увеличиваются в три раза

Компания Evinced, поставщик решений для обеспечения доступности веб-сайтов и мобильных устройств, в 2023 году увеличила свою клиентскую базу в три раза благодаря новым инструментам, ориентированным на профилактику, таким как Unit Tester и Design Assistant.

08 февраля 2024 г.
35

Продолжаем добавлять языки программирования для Вас.
Впереди много интересного!

Только свежие новости программирования и технологий каждый день.