import java.util.Date;
import java.util.Timer;
import java.util.TimerTask; public class ManyProject {
public static void main(String[] args) {
//创建方法1的对象
Mythread_thread firstThread=new Mythread_thread();
firstThread.start();//开启线程
System.out.println("********************************"); //创建方法2的对象
Mythread_run secondThread=new Mythread_run();
//创建Thread类对象,把方法2类对象当做Thread类的构造方法的参数传递进去
Thread second=new Thread(secondThread);
second.start();//Thread对象开启新的线程
System.out.println("********************************"); /* //main线程方法
for (int i = 0; i < 10; i++) {
System.out.println("main线程报数:"+i);
}*/
} }
/*创建新的线程:方法1==>继承Thread类*/
class Mythread_thread extends Thread{//1、继承Thread
@Override
public void run() { //2、实现run方法
// for (int i = 0; i < 10; i++) {//3、自定义执行语句
//System.out.println("继承Thread类 --线程报数:");
Timer timer = new Timer();
//表示在3秒之后开始执行,并且每2秒执行一次
timer.schedule(new MyTask2(),3000,2000);
// }
}
} /*创建新的线程:方法2==>实现Runnable接口*/
class Mythread_run implements Runnable{//1、自定义类实现Runnable接口
@Override
public void run() {//2、重写run方法
Timer timer = new Timer();
//表示在3秒之后开始执行,并且每2秒执行一次
timer.schedule(new MyTask1(),3000,2000); }
} /**
* 类描述:这个类代表一个定时任务
* @author xiezd
* 自定义定时任务,继承TimerTask
*
*/
class MyTask1 extends TimerTask{ //在run方法中的语句就是定时任务执行时运行的语句。
public void run() {
System.out.println("Hello!! 现在是:"+new Date().toLocaleString());
}
}
class MyTask2 extends TimerTask{ //在run方法中的语句就是定时任务执行时运行的语句。
public void run() {
System.out.println(" 现在是:"+new Date().toLocaleString());
}
}

运行结果:

两个进程同时运行,输出的结果并不是按照某个固定的顺序进行的,是随机产生的,无规律可言。

参考博客:https://blog.csdn.net/zyj0813/article/details/78345617

JAVA多线程间隔时间段执行方法的更多相关文章

  1. java 多线程中的wait方法的详解

    java多线程中的实现方式存在两种: 方式一:使用继承方式 例如: PersonTest extends Thread{ String name; public PersonTest(String n ...

  2. Java多线程之控制执行顺序

    概念: 多线程在并发环境中的正常执行顺序是随机无序的,并不能按照期盼的结果输出. 因为启动一个线程时,线程并不会立即执行,而是等待CPU的资源调度,CPU能调度哪个线程,是通过多种复杂的算法计算而来. ...

  3. java多线程中用到的方法详细解析

    在多线程学习的过程中涉及的方法和接口特别多,本文就详细讲解下经常使用方法的作用和使用场景. 1.sleep()方法.      当线程对象调用sleep(time)方法后,当前线程会等待指定的时间(t ...

  4. java 多线程 集合的包装方法Collections.synchronizedXXXXX;线程安全的集合类:Java.util.concurrent.ConcurrentXXX;java.util.concurrent.CopyOnWriteXXXX

    问题:ArrayList  等线程不安全 当多线程并发修改一个集合数据时,可能同一个下标位置被覆盖. 示例代码: 一个List,我们创建10个线程,每个线程往这个List中添加1000条数据,结果往往 ...

  5. 【JAVA多线程中使用的方法】

    一.sleep和wait的区别. 1.wait可以指定时间,也可以不指定. 而sleep必须制定. 2.在同步的时候,对于CPU的执行权和以及锁的处理不同. wait:释放执行权,释放锁. sleep ...

  6. Java多线程中的join()方法

    一.join()方法介绍 join() 定义在Thread.java中.join()方法把指定的线程加入到当前线程,可以将两个交替执行的线程合并为顺序执行的线程.比如在线程B中调用了线程A的join( ...

  7. 浅谈Java多线程中的join方法

    先上代码 新建一个Thread,代码如下: package com.thread.test; public class MyThread extends Thread { private String ...

  8. Java多线程中的join方法

    新建一个Thread,代码如下: package com.thread.test; public class MyThread extends Thread { private String name ...

  9. java 多线程——join()方法

    在java语言中,join()方法的作用是让调用该方法的线程在执行完run()方法后,再执行join 方法后面的代码. 简单点说就是,将两个线程合并,用于实现同步的功能. 具体而言:可以通过线程A的j ...

随机推荐

  1. 怎么才能从github上面快速clone代码

    搜了很多教程,包括该本地host配置.在git上输入命令.使用githubdesktop等等方法,最后都不行,这位朋友讲的,先把仓库clone到码云上面,再从码云上面拉代码,速度会非常快. 传送门 g ...

  2. 函数基础实战之ATM和购物车系统

    username_list = [] prize_dict = { '0': "芭比娃娃", '1': "变形金刚", '2': "psp游戏机&qu ...

  3. golang数据结构之冒泡排序

    //BubbleSort 冒泡排序 func BubbleSort(arr *[]int) { ; i >= ; i-- { ; j-- { if (*arr)[j] > (*arr)[i ...

  4. css top,right,bottom,left设置为0有什么用?它和width:100%和height:100%有什么区别?

     壹 ❀ 引 当我们使用position属性时,总免不了与top,left,right,bottom四个属性打交道,那么这四个属性都设置为0时有什么用,与宽高设置100%又有什么区别?本文对此展开讨论 ...

  5. #3144. 「APIO 2019」奇怪装置

    #3144. 「APIO 2019」奇怪装置 题目描述 考古学家发现古代文明留下了一种奇怪的装置.该装置包含两个屏幕,分别显示两个整数 \(x\) 和 \(y\). 经过研究,科学家对该装置得出了一个 ...

  6. 前端笔记之React(七)redux-saga&Dva&路由

    一.redux-saga解决异步 redux-thunk 和 redux-saga 使用redux它们是必选的,二选一,它们两个都可以很好的实现一些复杂情况下redux,本质都是为了解决异步actio ...

  7. MySQL数据库查询所有表名

    查找指定库中所有表名 select table_name from information_schema.tables where table_schema='db_name'; 注:替换db_nam ...

  8. 记一次Python与C#的AES加密对接

    前言 这几天做自动化测试的同事找到我,说是帮她看看有个AES加密的问题要怎么处理. 大概就是文档中贴了一段C#的AES加密代码,然后她要翻译成python的版本,去做一些测试相关的工作. 在我印象中, ...

  9. C# Stocket

    介绍 1.TCP/IP(Transmission Control Protocol/Internet Protocol) 即传输控制协议/网间协议,是一个工业标准的协议集,它是为广域网(WANs)设计 ...

  10. newSingleThreadScheduledExecutor连续关闭造成 java.util.concurrent.RejectedExecutionException

    Exception in thread "main" java.util.concurrent.RejectedExecutionException: Task java.util ...