Do I have to lock if two go routines write into the same channel or is this automatically handled by go?
Channels are safe, it's built in.