侧边栏壁纸
博主头像
落叶人生博主等级

走进秋风,寻找秋天的落叶

  • 累计撰写 130555 篇文章
  • 累计创建 28 个标签
  • 累计收到 9 条评论
标签搜索

目 录CONTENT

文章目录

关于创建单个Timer来刷新不同的表格数据

2024-05-09 星期四 / 0 评论 / 0 点赞 / 6 阅读 / 4110 字

点击realtime-public-bus-scd2**,弹出左侧该节点下的表格,每隔五秒一刷新。 点击realtime-data_srv-bus-scd2**,弹出左侧该节点下的表格,每隔五秒一刷新

点击realtime-public-bus-scd2**,弹出左侧该节点下的表格,每隔五秒一刷新。

点击realtime-data_srv-bus-scd2**,弹出左侧该节点下的表格,每隔五秒一刷新。

 if (node.getLevel() == 3 ) { //如果该节点是第三级节点,则执行下面代码
    T++; //T为全局变量,初始化为0,每次点击加1
        //服务信息实例化
        DefaultTableModel fuwu_tableModel = new DefaultTableModel();
        jtable3 = new JTable(fuwu_tableModel){
        public boolean isCellEditable(int row, int column) { 
                return false;
        }
        };
                            
        if (T==1) {
                Timer timer_1 = new Timer();
                timer_1.schedule(new TimerTask(){
                public synchronized void run(){
                DataHandle.sendEventTwoInfo(eventTwoInfoSession, path);//向服务器传送态名,应用名,节点名   
                eventTwoInfo = DataHandle.getEventTwoInfo(eventTwoInfoSession,path);
                System.out.println("事件2数据=="+eventTwoInfo);
                refreshFuWuTable();
            }
                                    
            },0 ,5000 ); //timer_1五秒一执行上面的方法
            }
            jtable3 = new JTable(fuwu_tableModel){
            public boolean isCellEditable(int row, int column) { 
                    return false;
            }
            };
            value.jRightScrollPane.setViewportView(jtable3);

//当T=1的时候创建一个timer_1定时器。五秒一次执行。此后不管点击任意一个三级节点,都会固定让此一个线程刷新。

如果没有T=1进行限制,每次点击一个三级节点,都会固定创建一个Timer定时器,导致多条线程执行。

这样不管点击节点1还是节点2,都会固定一个timer进行5秒一次执行刷新,不会导致创建线程过多。

 

 

 

 

广告 广告

评论区