Revision 43868 branches/org.gvsig.desktop-2018a/org.gvsig.desktop.plugin/org.gvsig.raster.app/org.gvsig.raster.app.mainplugin/src/main/java/org/gvsig/raster/app/mainplugin/StatisticsPage.java

View differences:

StatisticsPage.java
34 34
    private static final long serialVersionUID = 8264136278039978040L;
35 35
    private StatisticsPanel panel;
36 36
    private RasterLayer layer;
37
    private Thread updateStatisticsThread;
37 38

  
38 39

  
39 40
    /**
......
145 146
    /**
146 147
     *
147 148
     */
148
    private void updateStatisticsPanel() {
149
        Thread thread = new Thread(new Runnable() {
149
    private synchronized void updateStatisticsPanel() {
150
        if( updateStatisticsThread!=null ) {
151
            return;
152
        }
153
        this.updateStatisticsThread = new Thread(new Runnable() {
150 154
            @Override
151 155
            public void run() {
152 156
                final Statistics statistics = layer.getStatistics(null);
......
156 160
                        panel.set(statistics);
157 161
                    }
158 162
                });
163
                updateStatisticsThread = null;
159 164
            }
160 165
        }, "Calculate statistics");
161 166

  
162
        thread.setDaemon(false);
163
        thread.start();
167
        updateStatisticsThread.setDaemon(false);
168
        updateStatisticsThread.start();
164 169
    }
165 170

  
166 171
}

Also available in: Unified diff