Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/unix/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 投票标准和其他FD_C++_Unix - Fatal编程技术网

C++ 投票标准和其他FD

C++ 投票标准和其他FD,c++,unix,C++,Unix,您好,我想监视来自libssh连接api的FD。但也希望监视STDIN,并解析来自STDIN的命令 我可以使用C++中的投票。 < P>不在标准C++中,它没有FD或 PORE()/。但是在UNIX(POSIX)上, STDIN < /C>是一个有效的FD值0。 < P>不在标准C++中,它没有FD或 PORE()/。但是在unix(POSIX)上,stdin是一个值为0的有效FD。在阅读功能列表之前,我没有使用过libssh,它告诉我它完全支持轮询。 因此,您应该能够poll()来直接监视ss

您好,我想监视来自libssh连接api的FD。但也希望监视STDIN,并解析来自STDIN的命令


我可以使用C++中的投票。

< P>不在标准C++中,它没有FD或<代码> PORE()/<代码>。但是在UNIX(POSIX)上, STDIN < /C>是一个有效的FD值0。

< P>不在标准C++中,它没有FD或<代码> PORE()/<代码>。但是在unix(POSIX)上,
stdin
是一个值为0的有效FD。

在阅读功能列表之前,我没有使用过libssh,它告诉我它完全支持轮询。 因此,您应该能够poll()来直接监视ssh连接和STDIN文件描述符

e、 g.为输入轮询stdin,例如

int timeout = 100; // wait 100ms
struct pollfd fd;
fd.fd = STDIN;
fd.events = POLLIN;
fd.revents = 0;
int ret = poll(&fd, 1, timeout);
if (ret > 0 && (fd.revents & POLLIN != 0))  {
  // got some data
} else {
  // check for error
}

poll的第一个参数是一个“struct pollfd”数组。我只指定了长度为1(第二个参数)。但是,您可以使用要监视的阵列中包含的来自libssh的其他文件描述符,根据需要分配任意数量的阵列。

在读取功能列表告诉我它具有完全轮询支持之前,我还没有使用libssh。 因此,您应该能够poll()来直接监视ssh连接和STDIN文件描述符

e、 g.为输入轮询stdin,例如

int timeout = 100; // wait 100ms
struct pollfd fd;
fd.fd = STDIN;
fd.events = POLLIN;
fd.revents = 0;
int ret = poll(&fd, 1, timeout);
if (ret > 0 && (fd.revents & POLLIN != 0))  {
  // got some data
} else {
  // check for error
}
poll的第一个参数是一个“struct pollfd”数组。我只指定了长度为1(第二个参数)。但是,您可以使用要监视的阵列中包含的libssh中的其他文件描述符,根据需要分配任意数量的阵列