美文网首页
Socket编程缓冲区

Socket编程缓冲区

作者: 这个名字也有宇 | 来源:发表于2016-12-02 17:21 被阅读0次

Scoket缓冲区必须在连接之前去创建:缓冲区大小需要根据具体情况进行设置,一般要低于64K(TCP能够指定的最大负重载数据量,TCP的窗口大小是由16bit来确定的),增大缓冲区可以增大网络I/O的性能,而减少缓冲区有助于减少传入数据的backlog(就是缓冲长度,因此提高响应速度)。对于Socket和SeverSocket如果需要指定缓冲区大小,必须在连接之前完成缓冲区的设定。

这里的缓冲区大小在android系统中不一定是最大低于64K,因为测试了一下,我在传输camera的预览数据的时候,

默认客户端的sendbuffersize的大小是524288,我设置他为10Mb的时候再去获取一下他的sendbuffersize得到来的是4Mb的,所以最大的为4Mb

默认服务器的receiveBufferSize的代销是110208,。

代码如下:

Socket socket =newSocket();

//输出缓冲区大小

System.out.println(socket.getSendBufferSize());

System.out.println(socket.getReceiveBufferSize());

//重置缓冲区大小

socket.setSendBufferSize(1024*32);

socket.setReceiveBufferSize(1024*32);

//再次输出缓冲区大小

System.out.println(socket.getSendBufferSize());

System.out.println(socket.getReceiveBufferSize());

详情可参考:http://blog.sina.com.cn/s/blog_616e189f0100s3px.html

相关文章

  • Socket编程缓冲区

    Scoket缓冲区必须在连接之前去创建:缓冲区大小需要根据具体情况进行设置,一般要低于64K(TCP能够指定的最大...

  • Socket缓冲区以及阻塞模式

    socket缓冲区每个 socket 被创建后,都会分配两个缓冲区,输入缓冲区和输出缓冲区。write()/sen...

  • linux网络编程系列(十三)--缓冲区设计及收发大量数据

    1. 自定义缓冲区 我们在使用TCP/IP编程的时候除了socket有收发数据缓冲区之外,通常我们还要自己定一个数...

  • 许世伟的Go语言基础 第五章总结

    第5章 网络编程 5.1 socket编程 以往socket编程: 建立socket:使用socket()函数。 ...

  • 网络编程

    python学习笔记-网络编程 socket编程: socket()函数:socket.socket([famil...

  • TCP socket 编程

    TCP socket 编程 讲一下 socket 编程 步骤 使用 socket 模块 建立 TCP socket...

  • 网络编程

    网络 Socket 基于TCP协议的Socket编程 基于UDP协议的Socket编程

  • 网络编程

    Linux Socket编程(不限Linux) C/C++ socket编程教程:1天玩转socket通信技术 一...

  • 5、响应输出

    write 将chunk数据写到输出缓冲区。 缓冲区数据刷新到浏览器是由socket来控制。 缓冲区刷新的几种方式...

  • netty学习系列一:Java NIO预备知识

    一、TCP发送缓冲区/TCP接收缓冲区 在传输层,每个socket对应的TCP连接都拥有自己的接收缓冲区和发送缓冲...

网友评论

      本文标题:Socket编程缓冲区

      本文链接:https://www.haomeiwen.com/subject/ywrqmttx.html