Wybierz limit czasu

select {
case msg = <- funcWaitingFor():
  // do logic
case time.After(time.Second):
  // timeout logic
}
Dopey Diplodocus