package door import ( "syscall" ) func Writer(handle int, writerChannel *chan string) { for output := range *writerChannel { buffer := []byte(output) n, err := syscall.Write(handle, buffer) if (err != nil) || (n != len(buffer)) { close(*writerChannel) break } } }