Параллельные тесты
Параллельные тесты в #golang позволяют выполнять несколько тестов одновременно. Это особенно полезно для тестов, связанных с IO поскольку другие тесты могут выполняться во время периодов ожидания, а значит, вы будете меньше времени ждать выполнения вашего набора тестов.
Это также поможет вам убедиться в том, что тесты не используют глобальное состояние, иначе они станут нестабильными.
Для этого достаточно пометить тест как параллельный следующим образом: изображение 1.
Бенчмарк-тесты
Бенчмарк-тесты - это отличный способ измерить и оптимизировать эффективность определенных частей кода.
Например, вот два способа конкатенации строки.
С помощью +: изображение 2.
Использование strings.Builder: изображение 3.
Если мы их запустим код, то получим следующий результат:
BenchmarkStringConcat-12 1000000 1200 ns/op BenchmarkStringBuilder-12 5000000 250 ns/opЭто означает, что тест выполнялся за
1000000 и 5000000 итераций, при этом stringConcat затрачивалось 1200 наносекунд на операцию, а strings.Builder - 250. Таким образом, strings.Builder гораздо эффективнее.@golang_interview
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍15❤1🔥1😁1
Немного расширенный функционал Mutex в грядущем пакете "go101․org/nstd".
vs
#Golang
@golang_interview
m.Lock()
defer m.Unlock()vs
defer m.Lock().Unlock()
https://github.com/golang/go/issues/63941
#Golang
@golang_interview
🤔18👍8🔥5🤯4❤3👎1😁1
Будет ли в 2023 году больше или меньше звезд, чем в предыдущем? (на данный момент 2 610 110).
@golang_interview
Please open Telegram to view this post
VIEW IN TELEGRAM
👍10❤2🔥1
В этой статье проиллюстрирована попытка определить схему подключения программ на языке Go.
Описаны довольно интересные внутренние особенности языка, реализация хука с помощью Си и ассемблера. Однако все управление осуществялется с помощью Go. Решение довольно универсальное его можно адаптировать к различным платформам и архитектурам процессоров.
https://blog.quarkslab.com/lets-go-into-the-rabbit-hole-part-1-the-challenges-of-dynamically-hooking-golang-program.html
#golang #infosec
@golang_interview
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7❤2🔥1