Since model elements follow Rational Statemate semantics, their assignments should be synchronized to the beginning of the next step (cycle). A direct assignment such as
might result in racing condition especially when the data/condition element is shared between two concurrent activities. The synchronized assignments are implemented via a set of service calls supported by the intrinsics library. The following is the synchronized assignment call for the above assignment.There are cases where using direct or deferred assignments do not make a difference, however, you should avoid using direct assignments.