linux获取套接字缓冲区大小

#include <sys/socket.h>//define socklen_t

//socklen_t also define in unistd.h

#include <iostream>

using namespace std;


int main()

{

   int fdSockClient;

   int recv_buf_len=0;

   socklen_t Len;

   Len=sizeof(recv_buf_len);

   fdSockClient=socket(AF_INET,SOCK_DGRAM,0);

   if(getsockopt(fdSockClient,SOL_SOCKET,SO_RCVBUF,&recv_buf_len,&Len)==-1)

   {

       cout<<"getsocketopt error"<<endl;

   }

   else

   {

       if(Len!=sizeof(int))

       {

           cout<<"sizeof(socklen) not sizeof(int)"<<endl;

       }

       else

       {

           cout<<"default sock_stream recvbuf="<<recv_buf_len<<endl;

       }

   }

   close(fdSockClient);


   return 0;

}

/*结果:default SOCK_STREAM recvbuf=87380

*结果:default SOCK_DGRAM recvbuf=111616

*/


linux获取套接字缓冲区大小,古老的榕树,5-wow.com

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。