as400向aix发送数据,用send,而aix端用recv来接收,但是当发送数据到一定量的时候,as400端出现“Interrupted function call”和“Descriptor not valid”错误,errno应该是EINTR 。但是这种情况对于同样的数据不是每次都出现,时有时无。as400端的程序使用C写的,部分代码如下: rc = send(sdn, sndbuf+sum, BUF_LEN, 0) { if(rc <= 0) { ErrMsg(ERRMSG204); /*这个函数是向sysopr发送msg*/ clos...
by shaun_dayie - AS400 - 2009-04-09 14:30:14 阅读(2251) 回复(5)
这是一段客户端测试代码 send_size+= send(sock, Out->;phead->;msgpkt.OutBuf, Out->;phead->;msgpkt.isize, 0); isize=Out->;phead->;msgpkt.isize; printf("send sock=%d;size=%d;sendsize=%d\n",sock,isize,send_size); send_size=0; send_size+= send(sock, Out->;phead->;msgpkt.OutBuf, Out->;phead->;msgpkt.isize, 0); ...
因为我写个变量去send的话就不能send 如这个贴 http://bbs.chinaunix.net/forum/23/20040217/261617.html
socket,send或write时无故死掉,没有任何提示 是一个多路复用的服务器程序,大致流程是这样: 接到一个新请求,accept一个socket socket读监听,异常监听 可读,读取内容,读完清除读监听,加入写监听 可写,写应答内容,经常就在这里死掉了,没有报错,也不生成core文件,就突然死掉了 下面是写应答的代码: while(totalsend < nbytes) { cerr << "totalsend=" << totalsend << ",nbytes=" << nbytes << endl; dsend = send...
最近在复习TCP协议,有个问题一直比较困惑,调用send/write并且返回成功意味着什么?目前有争议的两个答案,第一是发送成功代表数据到了本方的协议栈,是否发送到对端尚不可知;第二是数据已经被对端协议栈接受. 我的感觉应该是后者,因为从man 2 send的说明来看,decription的第一句就是: The system calls send(), sendto(), and sendmsg() are used to transmit a message to another socket. 也就是说,从man中看到对send类函数的说明...
socket 的read函数,如果本地缓存大于read读取的字节数。用read读取时,读完本次后再用read读取该缓存,读取的是后面的吗?不会重复读取?read会不断地把缓存内容向前移动? while(1) { recv(); } 就行?
linux , gcc 4.0,想写一个收邮件的程序 建立到smtp.163.com 25的socket, recv "220 163.com Anti-spam GT for Coremail System (163com[20050206])" send "ehlo mailserver" recv 250-mail 250-PIPELINING 250-AUTH LOGIN PLAIN 250-AUTH=LOGIN PLAIN 250 8BITMIME send "Auth login" 或 "quit"都提示502 Error: command not implemented 可是直接telnet到邮件服务...