gpt4 book ai didi

c++ - 在 Linux 上读取系统调用永远占用

转载 作者:太空宇宙 更新时间:2023-11-04 12:50:28 24 4
gpt4 key购买 nike

我正在用 C++ 编写 TCP 服务器应用程序。

我试图从套接字一次读取一行一个字符,但 read() 系统调用永远不会返回。

string buffered_reader::read_line() {
string str;
int i = 0;
char ch;

do {
int len = conn.read_from_conn((void*)&ch, 1);
if (len == -1)
throw string("Error reading from connection!");

str += ch;
} while (ch != '\n');

return str;
}

这里是 read_from_conn() 函数

int connectionplusplus::read_from_conn(void *buffer, int buffer_len) {
return read(this->connfd, buffer, buffer_len);
}

最佳答案

问题是 connfd 没有初始化。

关于c++ - 在 Linux 上读取系统调用永远占用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37367329/

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