安卓开发 socket之shutdownOutput()
来源:互联网 发布:淘宝联盟登陆要认证 编辑:程序博客网 时间:2024/04/30 22:10
socket.shutdownOutput()至少有两个作用:
1:关闭输出流后,此前输入的数据可以发送,而此后的则不可以;
2:在要发送的数据后面加上正常终止符。
第二点很重要,因为如果使用socket的readLine()方法来读数据,会涉及一个问题。该方法是阻塞式的,如果没有数据可读,则一直等待。
虽然这样使得编程很方便,但同样带来一个问题,如何正常的从阻塞中返回。
一般可以判断数据流的末尾标记,比如-1,null,\n。我也不确定哪个标识表示数据流读取完毕,但是如果使用shutdownOutput()方法发送数据,
则使用readLine()方法读取数据可以正常返回阻塞。
这就是我理解的shutdownOutput()的终极意义。
0 0
- 安卓开发 socket之shutdownOutput()
- 安卓Socket开发注意事项
- 安卓Socket使用之服务器端
- 安卓Socket使用之客户端
- 安卓开发之基于AsyncTask的socket常连接方法。
- 【Java TCP/IP Socket】 — close()/shutdownOutput()/shutdownInput() 分析
- 【Java TCP/IP Socket】 — close()/shutdownOutput()/shutdownInput() 分析
- 安卓开发之安卓反编译
- 安卓开发之安卓手电筒
- 安卓开发中socket通信开发实例
- 安卓开发之旅
- 安卓开发之组件
- 安卓开发之Intent
- 安卓开发之Camera
- 安卓开发之路
- 安卓开发之绘图
- 安卓开发之对话框
- 安卓开发之TextView
- iOS个人整理36-即时通信2 XMPP 好友列表 聊天信息
- SSH框架整合发现的问题,必须放置在Spring中配置
- java回顾篇——面向对象的封装,继承,多态
- OpenCV InRange函数
- 分段切换控制器(倒置的tableView)
- 安卓开发 socket之shutdownOutput()
- STL vector
- Linux驱动开发-9、Linux定时器
- 利用jquery高仿select下拉菜单效果
- C语言volatile
- mysql存储过程 定时任务
- Fedora Nagios Quickstart
- 《ITer奋斗史的第一个博客》
- 回归与分类的区别