Ir para o conteúdo

Sequential

Implementation

from time import sleep

from dotflow import DotFlow, action, Context


@action
def task_foo(initial_context: Context):
    sleep(2)
    value = initial_context.storage
    return value * value * value


@action
def task_bar(initial_context: Context):
    sleep(1)
    value = initial_context.storage
    return value * value * value


def main():
    workflow = DotFlow()

    workflow.task.add(step=task_foo, initial_context=10)
    workflow.task.add(step=task_bar, initial_context=10)

    workflow.start(mode="sequential")

    return workflow


if __name__ == "__main__":
    main()

Workflow

flowchart TD
A[Start] -->|run| B
B[task_foo] -->|response to| C
C[task_bar] -->|response| D
D[Finish]