brian314 2010-12-25 12:17
浏览 371
已采纳

发现一个问题,Timer跟TimerTask结合之后,是单线程运作的?

Timer timer = new Timer();
timer.schedule(new task1),2000,2000);
timer.schedule(new task2(),2000,2000);

往Timer里面添加两个TimerTask
后来发现是先执行完task1,再执行task2,然后执行task1,然后执行task2,
请问能设定Timer里面的线程互不干扰吗?我想它们并行执行

  • 写回答

1条回答 默认 最新

  • dyccsxg 2010-12-25 13:01
    关注

    这个本来就是并行执行的,只不过由于线程执行顺序的不确定性,
    短时间内看到的可能是一先一后.
    [code="java"]import java.util.*;

    public class Main{

    public static void main(String[] args){
    
        Timer t = new Timer();
        t.schedule(new TimerTask(){
            public void run(){
                System.out.println(">> task1.");
            }
        },2000,2000);
        t.schedule(new TimerTask(){
            public void run(){
                System.out.println("-- task2.");
            }
        },2000,2000);
    }
    

    }[/code][img]http://upeo9w.blu.livefilestore.com/y1pb7yYz7Mg4XIaKmZ0xmq0i9M6PCFIOr_v5DX_GJiZnFnOlXzLmOGXuGnpnxWJLVcEGPN9RmlGDbt9MV3aisTcLhpr2Wm8xk7k/java.png[/img]

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 C++使用Gunplot
  • ¥15 这个电路是如何实现路灯控制器的,原理是什么,怎么求解灯亮起后熄灭的时间如图?
  • ¥15 matlab数字图像处理频率域滤波
  • ¥15 在abaqus做了二维正交切削模型,给刀具添加了超声振动条件后输出切削力为什么比普通切削增大这么多
  • ¥15 ELGamal和paillier计算效率谁快?
  • ¥15 file converter 转换格式失败 报错 Error marking filters as finished,如何解决?
  • ¥15 Arcgis相交分析无法绘制一个或多个图形
  • ¥15 关于#r语言#的问题:差异分析前数据准备,报错Error in data[, sampleName1] : subscript out of bounds请问怎么解决呀以下是全部代码:
  • ¥15 seatunnel-web使用SQL组件时候后台报错,无法找到表格
  • ¥15 fpga自动售货机数码管(相关搜索:数字时钟)