`
endual
  • 浏览: 3579069 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

java interruped的使用方法

    博客分类:
  • java
 
阅读更多
1 interruped
java中当一个线程sleep时,调用其中断方法是无效的,因此在异常的处理中需要将线程interrupt(),否则线程依然是非interrupt状态。
下面的例子中,线程将进入死循环,不会退出,因为主线程调用了interrupt()方法时,线程s正在睡眠。
正确的方法应该在异常中调用Thread.currentThread().interrupt();
public static void main(String[] args) throws InterruptedException
    {
        Thread s =  new Thread(){
            public void run(){
                while(!interrupted()){
                    System.out.println("------");
                    try{
                        sleep(5000);
                    } catch (InterruptedException e) {
                        //Thread.currentThread().interrupt();
                        System.out.println("异常");
                    }
                    System.out.println(".......");
                }
            }
        };
        s.start();
       
        Thread.currentThread().sleep(2000);
        s.interrupt();
    }
2.synchronized与wait区别
synchronized不会让线程进入对象的等待队列,线程不会停止,而wait表示将线程放入到对象的等待队列中,只有当其他的线程调用了notify,notifyAll时,jvm才会调度该线程
3.静态synchronized
synchronized表示同步的对象为当前对象,静态synchronized表示锁定的是class对象
4.stop方法用来停止线程不安全,当一个线程被stop时,它会立即释放它锁定的所有对象的锁,这会使得各个对象处于不一致的状态中,要停止一个线程,使用一个变量来标示
 

 

分享到:
评论

相关推荐

    java 泛型方法使用示例

    下面我们将深入探讨Java泛型方法的概念、语法以及使用示例。 **一、泛型方法概念** 泛型方法是一种具有类型参数的方法,这些类型参数可以在方法声明时指定,并在方法体内部使用。与类的泛型类似,它们提供了编译时...

    使用Java自动化方法模拟Android人工点击、触屏事件(含platform-tools工具)

    本篇文章将深入探讨如何使用Java自动化方法模拟Android的人工点击和触屏事件,同时涉及`platform-tools`工具包中的adb(Android Debug Bridge)。 首先,`platform-tools`是Android SDK的一部分,包含了adb工具,这...

    java中main方法发送httpPost请求

    这可以通过`java.net.URL`类的`openConnection()`方法实现: ```java URL url = new URL("http://target.com/api"); HttpURLConnection connection = (HttpURLConnection) url.openConnection(); ``` 2. **...

    java动态识别文件编码EncodingDetect.java附使用方法很简单

    当我们循环遍历文件进行操作的时候可能遇到各种各样的文件编码格式,如果不知道当前循环的文件格式的话,将会遇到各种各样的问题,...使用java动态识别文件编码EncodingDetect.java这个工具类以后就变得异常简单了!

    java解析wsdl文档获取方法与参数

    本文将深入探讨如何使用Java来解析WSDL文档,提取其中的方法和参数。 首先,理解WSDL的基本结构是必要的。一个WSDL文件通常包含服务定义、消息定义、端点(port)定义以及绑定定义。服务定义指明了服务的名称,消息...

    Java 使用poi导入excel 并使用xml做数据验证

    Apache POI是一个流行的库,它允许开发者使用Java来读取、写入和修改Microsoft Office格式的文件,包括Excel(.xlsx, .xls)。在本项目中,我们结合了POI库和XML技术来实现Excel数据的验证与导入数据库。 首先,...

    java swing项目皮肤包+使用方法说明

    - 使用`UIManager.setLookAndFeel()`方法将加载的LookAndFeel应用到整个应用程序。 ```java try { UIManager.setLookAndFeel(lookAndFeel); } catch (UnsupportedLookAndFeelException ulafe) { ulafe....

    java反射,获取所有属性、方法以及List集合类

    本篇文章将深入探讨如何使用Java反射来获取一个类的所有属性、方法,并处理List集合类。 首先,让我们了解Java反射的基础概念。在Java中,`java.lang.Class`类代表运行时的类信息。我们可以使用`Class.forName()`...

    把wsdl文件转换成java类 使用wsdl2Java工具

    5. **集成到项目中**: 将生成的Java类导入你的Java项目,然后就可以像调用普通Java方法一样调用Web服务。 6. **调用Web服务**: 使用客户端代理类,实例化并调用对应的方法,传入参数,即可完成对Web服务的调用。 7...

    javatwain 使用扫描仪

    本程序实现了在web页面上,用JAVA的方式,调用扫描仪进行扫描,并上传至远程服务器。并且可以设置扫描范围、扫描精度、以及扫描UI显示等! 该版本在uploadpath参数设置为“http://localhost/xxx.action”,即使用...

    java中set、list和map的使用方法实例

    // java中对象容器主要有Set,List和Map三个接口类。 // 迭代器(Iterator)模式,又叫做游标(Cursor)模式。 // GOF给出的定义为:提供一种方法访问一个容器...另包含一篇网文:在java中使用TreeMap进行中文排序

    JAVA_API1.6文档(中文)

    java.awt.im.spi 提供启用可以与 Java 运行时环境一起使用的输入方法开发的接口。 java.awt.image 提供创建和修改图像的各种类。 java.awt.image.renderable 提供用于生成与呈现无关的图像的类和接口。 java.awt....

    java源码包---java 源码 大量 实例

     Java编写的HTML浏览器源代码,一个很简单甚至不算是浏览器的HTML浏览器,使用方法:  可直接输入文件名或网络地址,但必需事先连入网络。 Java编写的山寨QQ,多人聊天+用户在线 21个目标文件 摘要:JAVA源码,...

    java调用C#封装的dll方法

    另一种常见的方法是使用Java-COM Bridge (Jacob),它允许Java直接调用COM对象而无需经过中间层。 **步骤详解:** **1. 创建C# COM组件:** - 此步骤与使用JNA的方法相同。 **2. Java调用C# DLL:** - **添加...

    迅雷下载接口java实现

    5. **加载DLL**:在Java代码中,使用`System.loadLibrary`方法加载刚刚编译好的DLL。 6. **调用接口**:现在,Java代码可以调用C++实现的函数,启动迅雷下载任务了。 在实际开发过程中,还需要注意以下几点: - **...

    用java调用.net接口的方法

    标题提到的“用java调用.net接口的方法”就是解决这个问题的一种技术实践。以下将详细讲解三种主要的实现方式,以及如何通过提供的源代码进行操作。 首先,我们要理解Java和.NET之间的互操作性通常依赖于Web服务...

    ECharts-java 的使用demo

    设置好图表和配置项后,使用ECharts-java提供的方法将这些配置转化为JSON字符串。这个字符串将被发送到前端,并用于绘制图表。 6. **前端展示**: 在HTML页面中,你需要引入ECharts的JavaScript库,并设置一个...

    Java2Pas Java代码转pas代码

    Java是一种广泛使用的高级编程语言,以其平台无关性和强大的类库支持闻名。它的语法受到C++的影响,但引入了垃圾回收机制,简化了内存管理。另一方面,Pascal则是一种较老的语言,源于1970年代,因其清晰的语法结构...

    使用java快速判断网页链接是否有效

    本文将详细介绍如何使用Java语言来实现一个简单的工具方法,用于快速判断一个网页链接是否有效。 #### 一、方法原理 本方法通过`java.net.URL`类创建一个URL对象,并使用`java.net.HttpURLConnection`类打开与该...

    Java开发技术大全(500个源代码).

    DumpMethods.java 使用反射机制来获取类中的方法 getClassName.java 利用反射机制获取类的名字 invokeConstructor.java 利用反射机制调用构造器 invokeMethod.java 利用反射机制调用成员方法 listConstructors....

Global site tag (gtag.js) - Google Analytics