Processing With Asynchronous Cartridges
When POP invokes a work order on an asynchronous cartridge, there is no immediate result to evaluate. So POP sets the service order status to Waiting. The service order is then directed to the waiting port. This port is connected to a waiting queue.
When the work order response arrives from the cartridge, the service order is requeued and POP resumes its execution. The decomposition and execution of Service Orders or Products Orders are the same for asynchronous or synchronous cartridges.
You do not need to put the POP waiting queue into your flows since POP creates and connects this queue automatically.
Execution Policy
The execution policy can either be Product Order Slicing or Dependency Tree. The way product orders are executed can be controlled on each service order basis by updating the following service order data set parameter:
pop::EXECUTION_POLICY
If the value of this parameter is set to Slicing, the execution is as usual, after each slice.
If the value of this parameter is set to Dependency Tree, product orders are launched at the earliest when all of their constraints are appropriate, irrespective of their slice numbers .
Slice Checkpoints Mechanism
POP can checkpoint service orders between slices by using the following service order data set parameter:
pop::POP_CHECKPOINT
If the value of this parameter is set to AfterSlice, POP checkpoints the service order after each slice. This applies only to the service orders executing without dependency tree.