
Итак, задача: написать свою фукнцию
sleep
time.After
, вот так:package main
import (
"log"
"time"
)
func sleep(d time.Duration) {
select {
case <-time.After(d):
}
}
func CallSleep() {
log.Println("Do something")
sleep(5 * time.Second)
log.Println("Something else")
}
Но выглядит как-то громоздко, да и вообще.
func sleep2(d time.Duration) time.Time {
ticker := time.Tick(d)
for done := range ticker {
return done
}
return time.Now()
}
func sleep(d time.Duration) {
<-time.After(d)
}
Ну вот, то, что нужно
@Golang_google