Sobes.tech
Назад к вопросам
Junior
27

// Что выведет следующая программа и сколько она будет выполняться по времени?? package main import ( "fmt" "time" ) const numRequests = 10_000 var count int func networkRequest() { time.Sleep(time.Millisecond) // Эмуляция сетевого запроса. count++ } func main() { for i := 0; i < numRequests; i++ { networkRequest() } fmt.Println(count) // 10_000 }

Компании, где спрашивали
СБК ПАРУС

Ответ от нейросети

sobes.tech AI

Программа выполнит 10_000 итераций, в каждой из которых вызывается функция networkRequest(), которая делает паузу на 1 миллисекунду (эмуляция сетевого запроса) и увеличивает глобальную переменную count на 1.

Вывод программы будет:

10000

По времени выполнение примерно составит 10_000 миллисекунд, то есть около 10 секунд, так как вызовы networkRequest() идут последовательно, и каждый задерживается на 1 мс.

Если бы запросы выполнялись параллельно (например, с использованием горутин), время могло бы значительно сократиться.