java的语句执行的时序性?

一直对这个问题的理解有个模糊状态,如下面的代码

我的原意是,等profitService.toSavePartData(goalData);保存完了,就清空goalData这个集合。真实是不是就这样呢?还是一边保存,一边执行下面的清空语句呢?如果是,如何达到我的愿意??


    if (goalData.size() % 100 == 0) {

                    

                    System.out.println("已经满足1次,保存中。。。。");

                    profitService.toSavePartData(goalData);

                    goalData.clear();


                }


慕田峪4524236
浏览 441回答 2
2回答

牧羊人nacy

这取决于 toSavePartData 方法内如何办的,如果里面有个new Thread(new Runnable(){    @override    public void run() {        // ...    }}).start();之类的方法就不好说了。如果没有,那可以认为是串行的。

翻过高山走不出你

单线程下是一句一句执行,只有profitService.toSavePartData(goalData);这句执行完才会进行下一句。java没有异步方法(多线程可实现类似功能),只有多线程问题,题主不要搞混了。PS:可能描述不那么精确,仅做参考。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java