我想在每次对标准输入进行单独击键后将用户的击键直接发送到通道。
我尝试了下面的代码,但这并没有给出预期的结果,因为该reader.ReadByte()
方法会阻塞,直到输入换行符。
func chars() <-chan byte {
ch := make(chan byte)
reader := bufio.NewReader(os.Stdin)
go func() {
for {
char, err := reader.ReadByte()
if err != nil {
log.Fatal(err)
}
ch <- char
}
}()
return ch
}
感谢您就如何让每个用户输入字符立即进入频道而不需要换行符提供任何建议。