如何等待,直到计数器结束

问题描述 投票:0回答:1

我需要的应用程序要等到柜台完成其工作,以便它可以返回值的全阵列所以接下来的功能,可以用它代替“空”

移动柜台等方法的作品,但遗憾的是它不是一个选项。

        String[] rows;
        parser.beginParsing(file);
        String[] firstRow = parser.parseNext();
        while ((rows = parser.parseNext()) != null) {
            String lastRow = rows[0];
            content = rows;
            data.add(content);
            Double[] points = new Double[data.size()];
            for (int i = 0; i < data.size(); i++) {
                rows = data.get(i);
                points[i] = new Double(Double.parseDouble(rows[1]));                      
            }
            XYSeries dataSeries = new SimpleXYSeries(Arrays.asList(points), SimpleXYSeries.ArrayFormat.Y_VALS_ONLY, "Series1");       
            SampledXYSeries sampledSeries = new SampledXYSeries(dataSeries, OrderedXYSeries.XOrder.ASCENDING, 2,10);
            lineFormatter = new FastLineAndPointRenderer.Formatter(LINE_COLOUR, null,  null);
            csvPlot.addSeries(sampledSeries, lineFormatter);      
        } 

我希望线程等待,直到计数器完成如此“点”将包含实际的解析数据。现在它返回“空”,并呼吁sampledSeries崩溃的应用程序。

java android
1个回答
1
投票

如果你只需要几秒钟的特定数目的计数器,你可以张贴下面片段可运行

// Fill your array here

new Handler().postDelayed(new Runnable() {
    @Override
    public void run() {
        // work to be done after 6000 msec
        Toast.makeText(MainActivity.this, "6 sec passed", Toast.LENGTH_SHORT).show();
    }
},6000); // time in msec

但我相信,你需要像AsyncTaskAsnycTaskLoader另一种方法,这是因为在大多数情况下,当你想要做点别的东西之后;你居然不知道什么时候第一次操作结束后,或在您的情况下,当你阵将完全用数据占用;请让我知道如果你需要的一些帮助。

© www.soinside.com 2019 - 2024. All rights reserved.