Go provides lightweight goroutines and channels so programs can coordinate many waiting tasks, especially network operations.