我的应用程序基本上是一个具有所有预期功能(如提示、历史记录等)的 CLI,它需要在 STDIN 上等待用户输入。为此,我正在使用 readLine 系统调用。我创建了一个网络套接字,用于将从用户读取的消息发送到服务器。我的应用程序是单线程的。因为我的应用程序被阻止用户输入,所以创建的套接字没有响应来自服务器的保持活动消息。我想知道是否有办法让 readLine 在一段时间后超时,这样我就可以轮询我的网络套接字并回来等待 readLine?。
我知道有一种解决方案可以让我生成一个线程来处理网络操作。但我不想让我的应用程序多线程。