从java socket对象获取的InputSteam的read方法其实是对linux的recv()函数的调用,OutputStream也同理。

也就是说,InputStream和OutputStream只是对底层接口的一个包装。

recv()和send()来自于<sys/socket.h>,这是glibc的头文件。函数原型如下:

ssize_t recv(int sockfd, void *buff, size_t nbytes, int flags);

ssize_t send(int sockfd, const void *buff, size_t nbytes, int flags);

可见,给定要传输的数据的起始地址以及要传输的数据的长度,就可以进行传输了。

而OutputStream的write方法,

java.io.OutputStream.write(byte[] b, int off, int len)

同样,给定要传输的数据的起始地址以及要传输的数据的长度。

最新文章

  1. ucos实时操作系统学习笔记——任务间通信(消息)
  2. Linux安装jdk
  3. Android WebView加载本地html并实现Java与JS交互
  4. 车牌识别LPR(四)-- 车牌定位
  5. MVC——数据库增删改查(aspx)
  6. 关于字符串计算size的方法比较
  7. 计算机体系结构 -内存优化vm+oom
  8. ubuntu 安装LaTex
  9. E - 今年暑假不AC HDU - 2037
  10. Zepto.js库touch模块代码解析
  11. 18 UI美化自定义形状shape
  12. tf.nn.conv2d。卷积函数
  13. 假设result 是一个float型变量,value是一个int型变量。执行以下赋值语句以后,变量value将是什么类型?为什么?
  14. shell脚本(二)
  15. 批量屏蔽符合条件的IP地址《目前仅测Centos 6 版本》
  16. discuz论坛 模板修改
  17. spring相关jar包的作用讲解(转)
  18. 【ZZ】Linux常用指令
  19. Adapter中用不了getWindowManager()
  20. Google Reader明日关闭:14款替代品对比

热门文章

  1. Method and apparatus for verification of coherence for shared cache components in a system verification environment
  2. 36深入理解C指针之---结构体的内存处理
  3. python 修饰器 最好的讲解
  4. checkbox 复选框只能选中一次,之后不能用
  5. QQ客服代码,支持临时会话
  6. Reactjs 的 PropTypes 使用方法
  7. 初识mysql语句
  8. 把Execl表格中的数据获取出来保存到数据库中
  9. ConcurrentHashMap如何保证线程安全
  10. Android图片缓存之Glide进阶(四)