缓存没必要设置太大,默认值就可以。你取消息最长的设置缓存的长度,花费的时间也不少。另外,可以用PrintStream代替DataInputStream,然后在构造器里设置autoFlush为true。vector是同步的,如果你处在单线程中,而且没有并发存取问题,可以用ArrayList代替。
解决方案 »
- Java键盘接收字符问题
- JFrame的小问题 速度帮帮
- Java调用Linux下的top命令的问题?
- 请高手帮忙,J2SE里面有没有开源的控件可以用来选DATE或者DATETIME的?
- 读取数据库问题,很简单的。
- HTML+CSS制作个人主页
- 要在java中实现按钮的不同状态!
- 高人说说JVM的这两个native方法的区别
- 我想把一个表里的数据拿出来,转换成xml格式,通过网络传到另外的数据消费者,如何设计xml的格式
- 寻《Complete Java 2 Certification Study Guide》第二章电子版文件2825c02.pdf
- 请问哪儿有比较好的基于java的网站流量统计程序下载?(内容空)
- HelloWorld的初级问题
我觉得最好将消息全部写入后,来一次flush呢,构造BufferedOutputStream的时候,size在大一点,maxmessagelength += message.getMessagelength() + 16;//4为writeInt的字节数。这样缓冲一次就可以了。个人意见!
PrintStream和DataOutputStream的差别我查了一下资料,我看不懂它们之间到底有多大差别,能讲将它们之间的差别、优缺点吗?