美文网首页
1.8暂停线程

1.8暂停线程

作者: 农家男孩 | 来源:发表于2017-06-27 22:21 被阅读0次

暂停线程意味着此线程还可以恢复运行。在java多线程中,还可以使用suspend()方法暂停线程,使用resume()方法恢复线程的执行。

/**
 * MyThread线程测试
 * @author wuyoushan
 * @date 2017/3/21.
 */
public class MyThread extends Thread {

    private long i=0;

    public Long getI() {
        return i;
    }

    public void setI(long i) {
        this.i = i;
    }

    @Override
    public void run() {
       while (true){
          i++;
       }
    }
}

/**
 * @author wuyoushan
 * @date 2017/3/20.
 */
public class Run {
    public static void main(String[] args){
        try{
            MyThread thread=new MyThread();
            thread.start();
            Thread.sleep(5000);
            //A段
            thread.suspend();
            System.out.println("A="+System.currentTimeMillis()+"i="+thread.getI());
            Thread.sleep(5000);
            System.out.println("A="+System.currentTimeMillis()+"i="+thread.getI());

            //B段
            thread.resume();
            Thread.sleep(5000);

            //C段
            thread.suspend();
            System.out.println("B="+System.currentTimeMillis()+"i="+thread.getI());
            Thread.sleep(5000);
            System.out.println("B="+System.currentTimeMillis()+"i="+thread.getI());

        }catch (InterruptedException e){
            e.printStackTrace();
        }
    }
}

从控制台的打印结果来看,线程的确被暂停了,而且还可以恢复成运行状态。

A=1490576230229i=2056518687
A=1490576235229i=2056518687
B=1490576240229i=4141381898
B=1490576245229i=4141381898

摘选自 java多线程核心编程技术-1.8

相关文章

  • 「Java并发编程」1.8暂停线程

    【Java并发】1.8暂停线程 暂停线程意味着此线程可以恢复运行。在Java多线程中用suspend()方法暂停线...

  • 1.8暂停线程

    暂停线程意味着此线程还可以恢复运行。在java多线程中,还可以使用suspend()方法暂停线程,使用resume...

  • java多线程基础学习(二)

    上次学习到了如何停止线程。这次学习暂停线程,线程的优先级,什么是守护线程首先了暂停线程暂停的线程意味着此线程还可以...

  • Java自学-多线程 常见线程方法

    Java 常见的线程方法 示例 1 : 当前线程暂停 Thread.sleep(1000); 表示当前线程暂停10...

  • Java线程暂停、等待、唤醒、让步总结

    Thread.sleep(long millis) : 使当前线程暂停指定时间,暂停期间该线程不参与CPU竞争; ...

  • java控制线程(三)

    通常用来暂停程序的执行。 下面程序调用sleep()方法来暂停主线程的执行,因为该线程只有一个主线程,当主线程进入...

  • wait、notify、sleep、interrupt等对比分析

    # 方法简述 # Thread类 sleep:暂停当前正在执行的线程(类方法) yield:暂停当前正在执行的线程...

  • 什么是GC停顿,为什么要停顿?

    GC停顿(STW):Stop The World,即暂停所有用户线程。因为只有暂停所有用户线程,才能保证系统不会产...

  • Java并发(2)

    1.如何暂停或恢复线程 在JDK中提供了以下两个方法(类Thread)用来暂停线程和恢复线程。 Øsuspend方...

  • 记录面试map

    1.hashmap数据结构?是线程安全吗?为什么不是线程安全?1.8为什么用黑红树?1.8为什么大于8使用红黑树?...

网友评论

      本文标题:1.8暂停线程

      本文链接:https://www.haomeiwen.com/subject/jmkycxtx.html