BBS水木清华站∶精华区
发信人: Yapith (早起的鸟儿有食吃), 信区: Java
标 题: Re: 有关Socket的流
发信站: BBS 水木清华站 (Sun May 30 20:26:18 1999)
阻塞是对的,JAVA会一直等到有数据为止,以为网络环境下
你不能保证另一方什么时候给你发数据。所以看起来就象是死了。
DataInputStream 和 DataOutputStream 用起来绝对没有问题。
我一直在用它们,你把源程序中相关的代码贴出来看看。
【 在 nobiggie (好了) 的大作中提到: 】
∶ 我在编写一个网络程序,由一个server(application)和一个client(applet)
∶ 组成.再使用流的问题上,我如果用PrintWriter和BufferedReader,则在两边
∶ 同时读空流时会死掉(此时两边都未向流中写数据).SERVER,CLIENT都会阻塞
∶ 而不是返回null.而若使用DataOutputStream和DataInputStream则根本连不
∶ 上,一启动就会捕捉到Connection reset by peer得异常.请各位高手指点迷
∶ 津,不胜感激!(以上程序编译都没问题)
【 在 nobiggie (好了) 的大作中提到: 】
∶ 标 题: 有关Socket的流
∶ 发信站: BBS 水木清华站 (Sun May 30 18:54:30 1999)
∶
∶
∶ 我在编写一个网络程序,由一个server(application)和一个client(applet)
∶ 组成.再使用流的问题上,我如果用PrintWriter和BufferedReader,则在两边
∶ 同时读空流时会死掉(此时两边都未向流中写数据).SERVER,CLIENT都会阻塞
如果你对读塞感到不满意,可以先看看流里是不是有了数据的说。
或者是再开个线程,
再有,DataInputStream和DataOutputStrema都很好用。
∶ 而不是返回null.而若使用DataOutputStream和DataInputStream则根本连不
∶ 上,一启动就会捕捉到Connection reset by peer得异常.请各位高手指点迷
∶ 津,不胜感激!(以上程序编译都没问题)
∶
发信人: soybean (大豆), 信区: Java
标 题: Re: 有关Socket的流
发信站: BBS 水木清华站 (Sat Jun 5 09:18:38 1999)
用PrintWriter和BufferedReader是没有问题的,我用的是Visual J++6.0
的环境.一般要使用一个单独的线程来用BufferedReader读流.
DataOutputStream和DataInputStream也是可以用的.但在编译时会提示'已
过时',如果Server端确保serversocket.accept()正常.一般不会出现
Connection reset by peer 的异常
--
世间有百媚千红 我独爱你那一种。
※ 来源:·BBS 水木清华站 bbs.net.tsinghua.edu.cn·[FROM: 162.105.181.60]
BBS水木清华站∶精华区