首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >当我使用新的Thread().interrupt();?

当我使用新的Thread().interrupt();?
EN

Stack Overflow用户
提问于 2014-10-02 06:51:38
回答 2查看 67关注 0票数 2

我创建一个Thread,类似于下面的代码。这个Thread将发送POST request。(代码还没有编写,所以我没有发布Thread的详细代码)

代码语言:javascript
复制
final Runnable Update_Value = new Runnable() {

        @Override
        public void run() {
            // TODO Auto-generated method stub

            **// It will send the POST request to the Server**

        }
    };

我使用new Thread(Update_Value).start();运行线程。

我使用new Thread(Update_Value).interrupt();中断线程。

如果我使用new Thread(Update_Value).start(); 来运行 Thread**.**,那么1.

如何在使用new Thread(Update_Value).start(); 时中断线程

3是应用程序关闭时的线程关闭,如果我不关闭它?

抱歉,我的English...Thanks提前了。

EN

回答 2

Stack Overflow用户

发布于 2014-10-02 06:55:12

  1. 如果每次使用new线程,那么这两个调用会创建两个不同的线程;它们不会在同一个线程上运行。
  2. interrupt()方法不会停止线程。相反,它告诉线程查看可能已经设置的任何中断标志,例如关闭标志。线程本身必须包含检查中断和检查标志(如关机标志)的代码。
票数 2
EN

Stack Overflow用户

发布于 2014-10-02 06:59:27

interrupt方法用于向正在运行的线程发送中断信号。调用一个新线程是没有意义的。

要正确处理中断信号,线程代码应该捕获InterruptedException。就像这样:

代码语言:javascript
复制
try {

      // do thread task

} catch (InterruptedException e) {
    // interrupted: if required do something on interrupt or simply return
    return;
}
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26155701

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档