设置socket缓冲区大小

 

设置socket缓冲区大小

分类: 天上的星 亮晶晶   2973人阅读  评论(2)  收藏  举报

socket发送数据时候先把数据发送到socket缓冲区中,之后接受函数再从缓冲区中取数据,如果发送端特别快的时候,缓冲区很快就被填满(socket默认的是1024×8=8192字节),这时候我们应该根据情况设置缓冲区的大小,可以通过setsockopt函数实现

 

    int setsockopt(
      SOCKET
 s,
      int
 level,
      int
 optname,
      const char*
 optval,
      int
 optlen
      );

    

    eg:

   int optVal = 1024*1024 ;
   int optLen = sizeof(int);

 

    setsockopt(socket, SOL_SOCKET,SO_RCVBUF,(char*)&optVal,optLen );

 

    socket:传输数据的socket

    SOL_SOCKET:基本套接口 
    SO_RCVBUF:接受数据的缓冲区

    optVal: 缓冲区大小

    optLen :指向缓冲区大小变量的长度

 

 

网上还有很多关于这个函数的详细说明。暂时没有用到。以后再添加!

你可能感兴趣的:(socket,Sockets,天上的星,亮晶晶)