在大多数示例中,SetReadDeadline在调用 之前调用net.Conn.Read()。
在我的程序中,为了中断我的net.Conn.Read(),我调用net.Conn.SetReadDeadline(time.Now())另一个线程/例程。这是正确的方法吗?
谢谢。
正如文档所述:
SetReadDeadline 设置未来 Read 调用和任何当前阻止的 Read 调用的截止日期。t 的零值意味着读取不会超时。
为阻塞的读取调用调用 SetReadDeadline 的唯一方法是从另一个 goroutine 调用,所以这是可以的。