「java中停顿」java中暂停语句
今天给各位分享java中停顿的知识,其中也会对java中暂停语句进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!
本文目录一览:
- 1、java 停顿的操作
- 2、如何让一个java程序突然暂停下来呢,不采用线程机制,我只想让它在一个特定的地方停顿几秒
- 3、如何在Java中使上一次循环与下一次循环之间停顿几秒
- 4、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中暂停语句的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。