求解答,小文件能正发送至浏览器,大一点的发送失败,浏览器显示未收到服务器发送过来的数据
``` c++
int send_file(struct bufferevent* bev,const char* filename)
{
int fd=open(filename,O_RDONLY);
if(fd == -1){
string str="open "s + filename +" failed"s;
perror(str.c_str());
return -1;
}
char buf[4096]{0};
int readsize=0;
int ret=0;
int sum=0;
while(1){
bzero(buf,sizeof(buf));
readsize=Read(fd,buf,sizeof(buf));
if(readsize == 0) break;
else if(readsize == -2) continue; // 连接是正常的,调用者 继续接收
else if(readsize == -1){ // 错误读取,退出调用
close(fd);
return -1;
}
ret=bufferevent_write(bev,buf,readsize);
// cout<<"errno = "<