java上位机开发(定时器使用)

Posted 嵌入式-老费

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java上位机开发(定时器使用)相关的知识,希望对你有一定的参考价值。

【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】

        定时器是实际开发中常用的一个特性。在实际开发中,我们发现有一些任务需要周期性的完成,比如说数据库的检查、设备的检查、状态的检查、变量的检查等等。这个时候就会使用到定时器。在java swing中,因为本身已经集成了定时器,所以直接使用即可。

        需要注意的是,定时器的回调函数中,对相关变量的访问和改写有可能与控件中的回调函数有冲突。这个时候,就需要做好数据的互斥保护工作。

1、准备测试代码

import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.Timer;

public class process

	public static int cnt = 0;

	public static void main(String[] args) throws InterruptedException
	
        Timer timer = new Timer(1000 ,new ActionListener() 
            public void actionPerformed(ActionEvent evt) 
            	System.out.println("cnt = " + cnt);
				cnt += 1;
            
        );
        timer.setRepeats(true);
        timer.start();
        Thread.sleep(5000);
        timer.stop();
	

2、代码分析

        代码主要来自于https://www.delftstack.com/zh/howto/java/swing-timer-in-java/这个地址,略作修改,在此表示感谢。代码中定义了一个变量timer,回调函数就是ActionListener中actionPerformed函数。timer设置为可重复式出发、开始、主线程睡眠、结束。

3、编译、执行

        代码没有问题的话,执行后你会看到这样的结果,

C:\\Users\\feixiaoxing\\Desktop\\java_jni>javac process.java && java process
cnt = 0
cnt = 1
cnt = 2
cnt = 3

以上是关于java上位机开发(定时器使用)的主要内容,如果未能解决你的问题,请参考以下文章

java上位机开发(开篇)

Java上位机开发(json处理)

java上位机开发(java基础)

java上位机开发(GUI设计)

java上位机开发(编译和部署)

java上位机开发(c库调用)