---
sourceDocument: Australia Build workflows
sourceDocumentLink: https://servicenow-prod.fluidtopics.net/r/build-workflows

 Release :

    - australia

ft:locale :

    - en-US

ft:publication_title :

    - Australia Build workflows

ft:clusterId :

    - crworkflow

bundleId :

    - crworkflow

workflow :

    - Creator


---

# Lock workflow activity

# Lock workflow
activity {#r_LockActivity__izw_3ks_3x}

* Release version: Australia
* 
* Updated March 12, 2026
* 
* ![](https://www.servicenow.com/docs/portal-asset/ico-clock) 2 minutes to read

Summarize  
![AI sparkle icon](https://servicenow.com/docs/portal-asset/ai-sparkle-icon) Summarized using AI  
This content was generated using new OpenAI-powered functionality. Results are provided on an as is basis and are not guaranteed to be accurate or complete.  

## Summary of Lock Workflow Activity

The Lock workflow activity is designed to manage concurrent instances of a workflow, ensuring that only one instance can proceed past the Lock activity until it is released.
This is particularly useful when multiple records trigger the same workflow, allowing for controlled execution of workflow activities.
Show full answer Show less  

## Key Features

* **Lock Mechanism:** Prevents other workflow instances from proceeding until the lock is released, which can be done explicitly with the Unlock activity or automatically after a specified maximum duration.
* **Retry Logic:** If a lock cannot be obtained, the instance will attempt to secure the lock until the maximum number of attempts is reached.
* **Input Variables:** Customize the lock behavior with parameters such as a unique mutex key, maximum duration of the lock, and retry settings including delay and max attempts.
* **Recommended Timer:** It is advisable to place a one-second timer before the Lock activity to prevent issues with thread identification.
* **State Management:** The activity provides feedback on its state, including Waiting, Finished, and Timeout, to inform the workflow engine of its status.

## Key Outcomes

Using the Lock activity effectively allows ServiceNow customers to ensure that workflows execute in an orderly manner, preventing conflicts and ensuring data integrity during concurrent operations. Proper configuration of lock parameters enhances the reliability of workflows, while adhering to recommended practices minimizes the risk of execution issues.  
The Lock activity prevents other instances of this workflow from continuing past this activity until the lock is released.{#r_LockActivity__wf-lock-activity-shortdesc}
Several instances of the same workflow may run concurrently. For example, if a workflow
triggers when a record is added to a particular table. That workflow triggers multiple times
if multiple records are added one after the other, once by each record insertion. You can
use the lock activity to ensure that this instance of the workflow has finished one or more
activities before any other instance of the workflow can proceed.

A workflow can explicitly release a lock with the Unlock activity.
The lock may also be released when the Max duration is reached.

When an instance of the workflow reaches the Lock activity, it
attempts to obtain a lock using the key specified in the lock activity. If another instance
has already obtained the lock and has not yet released it, this lock attempt fails. The
instance continues trying to obtain the lock until Max attempts has
been reached.  
Note:  
We recommend placing a one-second timer activity before the lock activity. This helps
prevent a rare condition in which the lock activity may not be able to distinguish one
workflow instance from another. This condition can occur because the entity owning the
lock is not the specific workflow instance, but rather the code-execution thread in which
that instance is running. In most cases, each workflow instance runs on a different
thread. Adding a timer activity ensures that this is the case.  
Figure 1. Example of Lock Activity Preceded by Timer Activity  
Since a Lock activity can only temporarily prevent processing of other workflow instances, do not add activities that cause the workflow to wait between a Lock and Unlock activity block. This may cause the Unlock activity to be unable to acquire the lock to release it and instead take 60 seconds to complete. Restricted wait activities include:

* Approval activities
* Task activities
* Timer activities
* Wait for condition activity
* Wait for WF Event activity
* MID server activities such as a PowerShell script
{#r_LockActivity__ul_hhw_h2m_wcb}

## Results

{#r_LockActivity__table_g3z_xwv_yr__entry__2}

| Result | Description |
|-|-|
| Success | The activity successfully obtained a lock. This instance of the workflow can proceed past this point, but other instances cannot proceed until the lock is released. |
| Failure | After attempting to obtain the lock Max attempts times, the activity could not obtain the lock. |
[Table 1. Lock activity results]

{#r_LockActivity__table_g3z_xwv_yr}

## Input variables

Input variables determine the initial behavior of the activity.
{#r_LockActivity__table_dfz_zwv_yr__entry__2}

| Field | Description |
|-|-|
| Key | A unique mutex key. The [Unlock activity](https://www.servicenow.com/docs/access?context=r_UnlockActivity&version=australia&pubname=australia-servicenow-platform&ft:locale=en-US) activity uses this key to release the lock. |
| Duration ||
| Max. duration | The maximum time the lock persists. The lock is released after it reaches this duration. Releasing a lock this way is equivalent to running the Unlock activity. |
| Lock attempts Specify how the activity behaves if the lock attempt is denied. If the final lock attempt fails, the activity state is set to 'timeout' and the activity result is set to 'failed'. ||
| Max. attempts | Specify the maximum number of times the activity may attempt to obtain the lock. |
| Delay between attempts | The amount of time required after a failed lock attempt before another lock attempt is allowed. |
[Table 2. Lock activity input variables]

{#r_LockActivity__table_dfz_zwv_yr}

## States

The activity state tells the workflow engine what to do with the activity.
{#r_LockActivity__table_lgv_fxv_yr__entry__2}

| State | Description |
|-|-|
| Waiting | The workflow engine is waiting to obtain a lock. |
| Finished | The activity successfully obtained the lock. |
| Timeout | The activity could not obtain a lock within the number of attempts specified by the Max. attempts input variable. |
[Table 3. Lock activity states]

{#r_LockActivity__table_lgv_fxv_yr}

