Назад к задачам
Junior — Senior
7

Какой текст выведет программа в консоль (пример 22)

Компании, где спрашивали:

Indrive
Получайте помощь с лайвкодингом в реальном времени с Sobes Copilot
Условие задачи

Определите, какой вывод появится в консоли после выполнения следующего кода.

func main () {
    ctx, _ :=context.WithTimeout(context.Background(), 3 * time.Second)
    time.Sleep(2950 * time.Millisecond)
    doDbRequest(ctx)
}

func doDbRequest(ctx context.Context) {
    newCtx, _ := context.WithTimeout(ctx, 10*time.Second)
    timer := time.NewTimer(1 * time.Second)
    select {
    case <- newCtx.Done();
        fmt.println("Timeout")
    case <- timer.C:
        fmt.Println("Request Done")
    }
}