仅在上一个功能完成后才启动功能

时间:2019-10-02 08:17:18

标签: java

我有3种方法,它们是从前端调用的。一旦调用了上一个函数,就只能调用一个函数,但不必全部调用它们。因此,您可以仅调用f1或f1-> f2或f1-> f2-> f3。

我的问题是,在前端上,您甚至可以在停止运行之前单击一个功能。在下一个功能开始运行之前,我需要每个功能都完成。

此刻我正在执行的工作正在暂停执行,直到上一个函数结束,但我想得到一个更好的答案:

    f1 {
        ready1=false
        ...
        ready1=true }

    f2 {
        ready2=false
        while (!ready1) {Thread.sleep(250);}
        ...
        ready2=true }

    f3 {
        while (!ready2) {Thread.sleep(250);}
        ...
        }

有一种简单的方法吗?

1 个答案:

答案 0 :(得分:0)

听起来您正在使用Web框架,所以也许包括该框架,并且它将具有一些内置工具。一个示例是使用内置的Java工具。

docker build -t myapp:test -f Dockerfile-backend-only .

我认为这表明在必要时可以通过添加更多闩锁来包含更多方法。

您的示例有缺陷,此解决方案也有缺陷。如果方法A失败了,那么方法B将永远阻塞。闩锁使您可以使用超时值,然后可以使用指示失败的响应。