Code-Memo

time

Monotonic clock

time.Now() returns a time.Time with a monotonic reading suitable for measuring intervals; wall clock can change (NTP) — use monotonic-aware Sub for durations.

start := time.Now()
// work
elapsed := time.Since(start)
Sleep and timers
time.Sleep(2 * time.Second)

t := time.NewTimer(5 * time.Second)
<-t.C
Tickers
ticker := time.NewTicker(500 * time.Millisecond)
defer ticker.Stop()
for range ticker.C {
	// periodic
}
Parsing and formatting
const layout = "2006-01-02 15:04:05"
t, err := time.Parse(layout, "2026-05-04 12:00:00")
s := t.Format(time.RFC3339)

Reference time is Mon Jan 2 15:04:05 MST 2006.

Location
loc, err := time.LoadLocation("America/New_York")
t := time.Date(2026, 5, 4, 12, 0, 0, 0, loc)
Context deadlines

Pair wall-clock limits with context.WithTimeout.