Component Mutex
Description
Occupies or vacates a critical section on the current site. Used to block an arbitrary operation (e.g. reading and modifying a site or global variable) from simultaneous execution in different script instances and associated harmful mutations. Can be used as an alternative to transactions.
The component suspends script execution until an initiative is issued confirming the capture of the named critical section.
The capture wait can be interrupted by a timeout and a capture failure occurs.
The critical section will be held until one of the following events:
a) execution of the section release in the same scenario by the same component with the "Release" action;
b) scheduled or unscheduled termination of the scenario handler;
c) expiration of the guaranteed release time specified in the component parameters.
d) reboot of the node or server executing the script.
The implementation of the component limits the application to a single site. The critical section is not bound to domains, specific servers, or scenarios. To enter such bindings, you should form a key using the name of the corresponding domain and/or server.
Index |
|
Short title |
|
Types of scenarios |
|
Starter module |
|
Mode |
Asynchronous |
Icon |
![]() |
Branching pattern |
Branching, closing |
Properties
Specification | Description |
---|---|
Title: |
Argument containing the name of the critical section. |
Title: |
Select an action on the critical section.
|
Title: |
Select the type of operation to be blocked.
Used for gripping. |
Title: |
An argument containing the timeout in milliseconds after which the capture wait should be terminated. Control is returned on the timeout branch. |
Title: |
Argument containing the lock hold time in milliseconds after which the critical section is guaranteed to be released without waiting for other events. |
Title: |
Variable to save the error text in case the capture fails. |
Title: |
The component to which control is passed on successful completion of the operation. |
Title: |
The component to which control is passed after the operation result timeout expires. |
Title: |
The component to which control is passed if an error occurs. |