Start events define where a Process or Sub Process starts.

The process engine supports different types of start events:

  • Blank
  • Timer
  • Message
  • Signal
  • Conditional
    The engine requires at least one start event to instantiate a process. There can be a maximum of one blank or timer start event per process definition. There can be multiple message or signal start events.

Asynchronous Instantiation

A start event may be declared as asynchronous with camunda:asyncBefore="true"

  1. <startEvent id="startEvent" camunda:asyncBefore="true" />

This will ensure that the process engine creates a process instance when the process is instantiated, but the execution of the initial activities is not done synchronously. Instead, a job is created and asynchronously processed by the job executor. See the Asynchronous Continuations section of the User Guide for some background information.

Camunda Extensions

Attributes
camunda:asyncBefore, camunda:asyncAfter, camunda:exclusive, camunda:formHandlerClass, camunda:formKey, camunda:initiator, camunda:jobPriority
Extension Elements
——-
camunda:failedJobRetryTimeCycle, camunda:formData, camunda:formProperty,
Constraints
——-
The camunda:exclusive attribute is only evaluated if the attribute camunda:asyncBefore or camunda:asyncAfter is set to true
The attributes camunda:asyncBefore and camunda:initiator are only available for start events of a Process
Only one camunda:formData extension element is allowed
The attributes camunda:formHandlerClass and camunda:formKey are only available for the intital start event of a Process

原文: https://docs.camunda.org/manual/7.9/reference/bpmn20/events/start-events/