「java中停顿」java中暂停语句

博主:adminadmin 2023-03-21 05:53:07 553

今天给各位分享java中停顿的知识,其中也会对java中暂停语句进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

本文目录一览:

java 停顿的操作

import javax.swing.*;

import java.awt.*;

import java.awt.event.*;

import java.util.concurrent.*;

/**

 * @author Hardneedl

 */

final class JPanelDemo extends JFrame {

    public String getTitle() {return "JPanelDemo";}

    static private final Dimension size = new Dimension(600,400);

    public Dimension getPreferredSize() {return size;}

    public Dimension getMaximumSize() {return size;}

    public Dimension getMinimumSize() {return size;}

    public Dimension getSize(){return size;}

    private class ChangeVisibilityAction implements ActionListener{

        private JComponent cmp;

        private ChangeVisibilityAction(JComponent cmp) {this.cmp=cmp;}

        public void actionPerformed(ActionEvent e) {

            cmp.setVisible(false);

            System.out.println("action performed");

        }

    }

    private class StartAction extends AbstractAction{

        private JComponent cmp;

        private Timer timer;

        public StartAction(JComponent cmp) {super("start");this.cmp=cmp;}

        public void actionPerformed(ActionEvent e) {

            if(timer==null){

                timer=new Timer(5000,new ChangeVisibilityAction(cmp)){

                    public boolean isRepeats() {

                        return false;

                    }

                };

                timer.start();

            }

        }

    }

    private JPanel panel;

    JPanelDemo() throws HeadlessException {

        init();

        attachListeners();

        doLay();

    }

    private void init(){

        panel=new JPanel(){

            public boolean isOpaque() {return true;}

            public Color getBackground() {return Color.MAGENTA;}

        };

    }

    private void attachListeners(){

        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

    }

    private void doLay(){

        Container container = getContentPane();

        container.add(new JButton(new StartAction(panel)),BorderLayout.NORTH);

        container.add(panel,BorderLayout.CENTER);

        pack();

        setVisible(true);

    }

    public static void main(String[] args) {

        System.setProperty("swing.defaultlaf","com.sun.java.swing.plaf.windows.WindowsLookAndFeel");

        SwingUtilities.invokeLater(

            new Runnable(){

                public void run() {

                    new JPanelDemo();

                }

            }

        );

    }

}

如何让一个java程序突然暂停下来呢,不采用线程机制,我只想让它在一个特定的地方停顿几秒

你好!

//定义休眠的秒

int

n=

try

{

Thread.sleep(n*1000);

}

catch(InterruptedException

e)

{

System.out.println("休眠被中断。");

}

如有疑问,请追问。

如何在Java中使上一次循环与下一次循环之间停顿几秒

public class Test {

public static void main(String[] args) {

for(int i=0 ;i10 ;i++){

try {

Thread.currentThread().sleep(5000);

} catch (InterruptedException e) {

e.printStackTrace();

}

System.out.println("now is " + System.currentTimeMillis());

}

}

}

java中垃圾回收器让工作线程停顿下来是怎么做的?

1、jvm中,在执行垃圾收集算法时,Java应用程序的其他所有除了垃圾收集收集器线程之外的线程都被挂起。此时,系统只能允许GC线程进行运行,其他线程则会全部暂停,等待GC线程执行完毕后才能再次运行。这些工作都是由虚拟机在后台自动发起和自动完成的,是在用户不可见的情况下把用户正常工作的线程全部停下来,这对于很多的应用程序,尤其是那些对于实时性要求很高的程序来说是难以接受的。 但不是说GC必须STW(Stop-The-World,全局暂停), 你也可以选择降低运行速度但是可以并发执行的收集算法,这取决于你的业务。

关于java中停顿和java中暂停语句的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。