Job

Execution of a component process is called a job. Each job has a unique id referred to as JobId.

When the business logic is spread across multiple processes, multiple process instances are created and run with a particular event. Even though these are separate process instances that work together and can be run as part of the same job. A job can spawn multiple process instances and can provide the execution context for activities that are part of multiple processes. The engine always runs a job in one engine thread.

All the process instances that are part of the same job have the same JobId. A component process instance and all of its in-line subprocess instances are also considered being a part of the same job. Non in-line subprocesses spawn a new engine thread and are run on a different job.