【发布时间】:2021-06-18 22:53:23
【问题描述】:
在调用.read(...) 之前,是否有一种干净/惯用的方法来检查是否有任何数据可供读取(例如,在对应于 TCP 连接的Conn 中)?如果有 1 个或更多字节可用,则可以安全地假设 read 返回的承诺不会永远处于挂起状态。
对于上下文,我刚刚开始学习 Deno,并且正在制作一个简单的 telnet 类脚本。我最初试图在同一个异步函数中处理来自标准输入的输入(通过连接写出)和接收的数据(显示)。在这种情况下,我必须小心不要await conn.read(...),因为这可能永远无法解决(其他主机可能不会再发送任何东西)。我知道我可以将它们分开,或者使用Promise.race 来等待来自任何一个的输入。但是,我仍然想知道是否有类似 peek 的函数/方法/实用程序来提供此功能。
【问题讨论】:
标签: deno