Java通过关闭Socket终止线程
2017-04-10 09:12
691 查看
本文实例为大家分享了Java关闭Socket实现终止线程的具体代码,供大家参考,具体内容如下
package Threads; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.net.Socket; /** * Created by Frank */ public class StopClose extends Thread { protected Socket io; public void run() { try { io = new Socket("java.sun.com", 80); BufferedReader is = new BufferedReader(new InputStreamReader(io.getInputStream())); System.out.println("StopClose reading"); /** * 死锁,因为读取响应之前,HTTP责成客户端发送一个请求(像GET/HTTP/1.0)和一个空行 */ String line = is.readLine(); /** * 所以我们永远不可能到达这里 */ System.out.printf("StopClose FINISHED after reading %s!", line); } catch (IOException ex) { System.out.println("StopClose terminating:" + ex); } } public void shutDown() throws IOException { if (io != null) { synchronized (io) { io.close(); } } System.out.println("StopClose.shutDown() complete"); } public static void main(String[] args) throws InterruptedException, IOException { StopClose t = new StopClose(); t.start(); sleep(1000*5); t.shutDown(); } }
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。
您可能感兴趣的文章:
相关文章推荐
- Java关闭Socket来终止线程
- Java并发学习笔记(4)线程的取消,关闭和异常终止
- Java线程的传说(3)——如何关闭一个正在accept的ServerSocket?
- Java并发:终止线程和关闭线程池
- java 线程可以终止吗?
- Java牛角尖【008】: 可以通过调用一个线程的run方法启动一个线程吗?
- java.net.SocketException: Broken pipe /Mysql在经过8小时不使用后会自动关闭已打开的连接
- JAVA代码:通过Socket读取返回的数据
- 通过socket传递java对象(对象序列化)
- Android系统原理与源码分析(1):利用Java反射技术阻止通过按钮关闭对话框
- 关闭超时的java线程 --利用join和interrupt方法
- flash中通过XMLSocket监控生产系统 java服务器端程序(2)
- Android系统原理与源码分析(1):利用Java反射技术阻止通过按钮关闭对话框
- 通过java.net.Socket 类抓取网页内容
- Android系统原理与源码分析(1):利用Java反射技术阻止通过按钮关闭对话框
- JAVA操作SSL协议,通过Socket访问Https的程序代码例子
- flash中通过XMLSocket监控生产系统 java服务器端程序(1)
- 通过socket连接传递java对象(对象序列化)
- JAVA代码:通过Socket执行HTTP的POST方法
- java终止线程的方法