java网络编程精解 孙卫琴 高清_新型java网络编程精解——孙卫琴.doc

新型java网络编程精解——孙卫琴.doc

fa18ea0b92eaf1924204cf96c81e0a1e.gif

还剩

29页未读,

继续阅读

下载文档到电脑,马上远离加班熬夜!

亲,喜欢就下载吧,价低环保!

内容要点:

对于线程池中空闲的工作线程,如果其闲置时间超过 TIMEOUT秒,就销毁该线程。8.用 Java实现一个采用用户自定义协议的文件传输服务器 FileServer和客户FileClient。当 FileClient发送请求“GET xxx.xxx”时,FileServer 就把xxx.xxx文件发送给 FileClient,FileClient 把该文件保存到客户端的本地文件系统中;当 FileCl3.9 练习题1.关于 ServerSocket构造方法的 backlog参数,以下哪些说法正确?(多选)A.backlog 参数用来显式设置操作系统中的连接请求队列的长度B.如果没有设置 backlog参数,那么连接请求队列的长度由操作系统决定C.当一个客户的连接请求被加入到服务器端的连接请求队列中时,就意味着客户端建立了与服务器的连接D.如果 backlog参数的值大于操作系统限定的队列的最下面按照以下方式运行 EchoServer、EchoClient 和 AdminClient,以观察 EchoServer 服务器的关闭过程。EchoClient 类的源程序参见本书第 1 章的 1.5.2 节的例程 1-3。(1)先运行 EchoServer,然后运行 AdminClient。EchoServer 与 AdminClient 进程都结束运行,并且在 AdminClient 的控制SocketException。EchoServer 的 service()方法捕获了该异常,在异常处理代码块中退出service()方法。l 如果 shutdownThread 线程已经执行了 executorService.shutdown()方法,而主线程正在执行 executorService.execute(…)方法,那么该方法会抛出 Rejected- ExecutionExcept executorService.execute(new Handler(socket));//可能会抛出 RejectedExecutionException}catch(SocketTimeoutException e){//不必处理等待客户连接时出现的超时异常}catch(RejectedExecutionException e){try{if(socket!=null)soc //等待关闭线程池,每次等待的超时时间为 30 秒while(!executorService.isTerminated())executorService.awaitTermination(30,TimeUnit.SECONDS);serverSocket.close(); //关闭与 EchoClient 客户通信的 ServerSocketlong endTime=S如例程 3-10所示是 EchoServer的源程序,其中关闭服务器的任务是由shutdown- Thread线程来负责的。例程 3-10 EchoServer.java(具有关闭服务器的功能) package multithread4;import java.io.*;import java.net.*;import java.util.concurrent.*;public clas等待客户发送的数据时,都可能会阻塞。可以通过以下方式设定超时时间:l 调用 ServerSocket 的 setSoTimeout(int timeout)方法,设定等待客户连接的超时时间,参见本章 3.5.1 节(SO_TIMEOUT 选项);l 对于每个与客户连接的 Socket,调用该 Socket 的 setSoTimeout(int timeout)方法,设定等待客户发送数据的超时时

发表评论

暂无评论,赶快抢占沙发吧。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值