# Limit workflow-based concurrent executions?

**URL:** <https://community.temporal.io/t/limit-workflow-based-concurrent-executions/633>\
**Category:** Community Support\
**Tags:** go-sdk\
**Created:** [September 16, 2020, 6:14am UTC](https://community.temporal.io/t/limit-workflow-based-concurrent-executions/633 "2020-09-16T06:14:05Z")\
**Posts on this page:** 1\
**Showing post:** 4

<div class="post-metadata">

**Author:** ![maxim](https://sea2.discourse-cdn.com/flex016/user_avatar/community.temporal.io/maxim/32/8_2.png) [@maxim](https://community.temporal.io/u/maxim)\
**Post date:** [September 17, 2020, 2:33pm UTC](https://community.temporal.io/t/limit-workflow-based-concurrent-executions/633/4 "2020-09-17T14:33:19Z")

</div>

For such a use case, I would use a mutex workflow. The basic idea that for each such resource exists a single workflow execution that invokes that activity. All other workflows send signals to this workflow to request the activity execution. The mutex workflow upon receiving a signal invokes the activity or buffers it until the previous execution is done.

[Here is a sample](https://github.com/temporalio/go-samples/tree/master/mutex) of such a workflow.

---

_[View the full topic](https://community.temporal.io/t/limit-workflow-based-concurrent-executions/633)._
