gpt4 book ai didi

linux - 关于标准输入的问题

转载 作者:太空宇宙 更新时间:2023-11-04 11:37:02 25 4
gpt4 key购买 nike

我有以下需求;

1) 在与 stdin 关联的文件描述符上选择 block

2) 现在我该如何编写代码以使 select 获得畅通无阻。代码应该使 stdin 文件描述符读取就绪。换句话说,代码应该在不等待用户输入的情况下使选择解锁

最佳答案

如果我们正在谈论 select UNIX 系统调用,并且您正在使用它来等待 stdin 上的数据,您可以使用超时参数来指示选择您想阻塞最多超时秒数。

来自select man on Linux :

#include <sys/select.h>
int select(int nfds, fd_set *readfds, fd_set *writefds,
fd_set *exceptfds, struct timeval *timeout);

timeout is an upper bound on the amount of time elapsed before select() returns. It may be zero, causing select() to return immediately. (This is useful for polling.) If timeout is NULL (no timeout), select() can block indefinitely.

The time structures involved are defined in and look like

struct timeval {
long tv_sec; /* seconds */
long tv_usec; /* microseconds */
};

关于linux - 关于标准输入的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7007981/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com