2

假设我有一个 ncurses 应用程序,它以亚秒的间隔(比方说,每毫秒循环一次)更新我的终端窗口。

while(true)
  write_some_value_to_terminal();
  sleep_for_1_millisecond();

如果我通过 SSH 远程连接到我的机器并运行该程序,这是否意味着 SSH 需要每毫秒执行一次往返以更新我的(远程)窗口?

编辑第二个问题,对于我正在编写的代码的实际应用是,我如何确定最佳睡眠值?瞄准亚秒级计时是否有意义?

4

2 回答 2

0

由于Nagle 的算法,您很可能根本看不到 1 毫秒间隔的更新。更不用说您的延迟很可能会高于 1 毫秒(除非您在同一个本地网络上),在这种情况下,更新将被常规 TCP ACKing 行为合并。

于 2013-04-11T21:28:25.433 回答
0

几乎。写入需要一些时间,之后它将休眠一毫秒,然后再次写入。

于 2013-04-11T21:07:23.527 回答