当前位置:  技术问答>java相关

高手给看一下,能不能实现

    来源: 互联网  发布时间:2015-07-10

    本文导语:  我在java的客户端程序中,使用下列语句: ClientSocket=new Socket(string,25); os=new PrintStream(new BufferedOutputStream(ClientSocket.getOutputStream())); is=new BufferedReader(new InputStreamReader(new BufferedInputStream(ClientSocket.getInputStream()))); 连接...

我在java的客户端程序中,使用下列语句:
ClientSocket=new Socket(string,25);
os=new PrintStream(new BufferedOutputStream(ClientSocket.getOutputStream()));
is=new BufferedReader(new InputStreamReader(new BufferedInputStream(ClientSocket.getInputStream())));
连接服务器。
可是我发现如果服务器关机,这个连接程序就像死机一样,半天不能点任何按钮。 
我想设计一个取消按钮,但是应该如何编呢?高手给些指导。

|
用线程。启动一个线程连结服务器。这样你可以在主界面做一个按钮,关闭线程。

|
java中没有专门的连接超是设置,当向一个socket发送请求的时候,发送线程
就会自动阻塞,如果没有回复就永远在那儿了,超时的控制是要自己来实现的
如果只有一个线程,那么如果socket没有回复,你的程序就挂那儿了,所以要
用多线程来控制。

|
设置一个连接超时,并把连接放在线程里
如果连接断开,可以收到一个 -1。

|
你可以利用多线程实现程序控制,并且可以控制连接超时
可以设置一个超时的时间段,由主控线程控制,定期检查
socket线程是否有回复,没有则判断为超时。

|
ClientSocket=new Socket(string,25);
端口号被规定为一个16位的整数0~65535。其中,0~1023被预先定义的服务通信占用(如telnet占用端口23,http占用端口80等)。除非我们需要访问这些特定服务,否则,就应该使用1024~65535这些端口中的某一个进行通信,以免发生端口冲突。

|
对,换个端口试试.最好是用1024以上的.

|
Socket :setSoTimeout(int timeout)

|
对,应该使用多线程。

    
 
 

您可能感兴趣的文章:

  • 各个高手看看这个问题!本人第一次学习java所以要各位高手的帮助。。 iis7站长之家
  • 要做一个在applet,实现可以托拽的图形(比如长方形和线段等)?那位高手有资料?或者有没有java的第三方类库实现此功能?
  • 问题太难,请教高手,关于raid1功能的错误检测的实现
  • 请教高手:Unix下如何实现进程池?
  • JMF中如何实现多路音频的混合输出?期待高手指教!
  • 有关ps的实现机制,请高手指教!
  • 那位高手知道怎样实现用JSP跟ORACLE连上?
  • Linux下多进程实现异步编成,高手帮忙!
  • oops实现,高手进来说说
  • 一个B/S实现的问题,期待高手!!!
  • 请问高手LInux 下的进程、线程的切换具体是如何实现的?
  • java中怎样实现四舍五入?高手过来啊,最高分啊
  • 请问诸位高手,Java中JFrame上最小化按钮是调用什么方法实现的??
  • 请问有哪位高手知道如何编程实现网络唤醒开机
  • 高手请进!Solaris下如何实现原子加的操作?不用互斥量等等同步对象!
  • 请教高手, 如何用expect实现BBS的自动登陆?
  • 高手指教:如何实现smtp的验证功能?
  • 我想在xp下安装linux系统,实现双系统,高手指点一下
  • 难以实现的tar命令,请教各位高手
  • ubuntu下 .自己写shell,想 实现命令回溯功能 ,望 高手指点 ...
  • KNOPPIX到底能不能读硬盘?高手在吗
  • POSTFIX能收不能发邮件,请高手指导!!
  • 我的REDHAT 9。0刚装好,显卡不能正常显示,请教各位高手
  • 请教高手,rethat linux9.0不能识别内置网卡
  • 急死了!! 高手来!!!!! 我的 Linux 不能识别我的显示器..........
  • windowsxp下可以上网,linux下相同配置不能上网,请高手指点.
  • 我不信,BCB上就没有了高手!如真不能解决,耻辱!
  • red hat 9 不能上网了,请高手帮忙
  • 高分请教高手:我的汉字输入法都不能用了
  • 有Linux 系统高手 能不能帮我配置个 PHP
  • 一个solaris8不能正常关机的问题,高手请入内...
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 高手,高手,高高手请进!
  • 有熟悉EXIM的高手高手么??
  • to 高手:学java应该怎样一步步学习,从菜鸟到高手.
  • 高分请高手,高手定能解决
  • 请问高手在linux中用什么命令可以做linux的启动盘???在等待高手??
  • 有高手研究Agent++麽?里面有个thread.h,蛮难读的,请高手指点
  • 难道高手区里的人就是高手?
  • 在dos下用bc31挑战高手******开发mssql程序,连接时报link err:undefined symbol GETNOTE in module DBEXTERN?(挑战高手)
  • 真正的linux高手,请看过来,看你符合高手标准不?
  • 难道这没有高手吗?难道这没有乐于助人的高手?(高分酬谢62+50+50)
  • 关于我对linux高手用yum,非高手用源码的理由
  • 高手救命,很急——ORACLE817安装在UNIXWARE711上,手工启动数据库后在netasst中连接错误,高手帮我看看?
  • 请教高手lvs的奇怪问题,我挺着急,希望高手别潜水,就就我,先谢谢了
  • 各个高手看看这个问题!本人第一次学习java所以要各位高手的帮助。。
  • :请教高手,小弟打印width=1500,height=600(A3纸)的Applet,在预览中是该区域是黑的,打印出来也是黑的,请教高手解决一下
  • 请教高手,小弟打印width=1500,height=600(A3纸)的Applet,在预览中是该区域是黑的,打印出来也是黑的,请教高手解决一下
  • 我是新手,高手,高手,快来救我
  • EJB问题,请教高手(非高手莫进)
  • 请各位JAVA高手,网业高手看过来,我把能给的分都送出!!!只能给37分,哎!!
  • eWEEK沙龙征集高手座谈


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3