Ich habe eine Schleife, die für eine gewisse Zeit schläft. An anderer Stelle in meinem Code muss ich diese Ruhezeit möglicherweise vorzeitig beenden, damit die nachfolgende Logik schneller ausgeführt werden kann.Trigger-Timer vorzeitig
for {
timer = time.NewTimer(30 * time.Second)
<-timer.C
// Do something
}
Anderswo ...
// Trigger timer
// timer.Trigger() ??
Natürlich timer.Stop()
den Timer stoppen, aber es wird das Programm zu hängen und nicht fallen bis auf // Do something
dann verursachen. Momentan setze ich den Timer auf eine sehr kurze Zeit zurück, so dass der Timer grundsätzlich sofort abläuft.
timer.Reset(time.Millisecond)
Gibt es einen besseren Weg, dies zu tun?