[API reference](https://evolu.dev/docs/api-reference) › [@evolu/common](https://evolu.dev/docs/api-reference/common) › [Task](https://evolu.dev/docs/api-reference/common/Task) › createMutexByKey

## Call Signature

```ts
function createMutexByKey<K>(): MutexByKey<K>;
```

Defined in: [packages/common/src/Task.ts:2796](https://github.com/evoluhq/evolu/blob/e7144e2bbe9069362b62dec1b64a8aa922b8f1b0/packages/common/src/Task.ts#L2796)

Creates a [MutexByKey](https://evolu.dev/docs/api-reference/common/Task/interfaces/MutexByKey).

## Call Signature

```ts
function createMutexByKey<K, L>(
  options: CreateMutexByKeyOptions<K, L>,
): MutexByKey<K>;
```

Defined in: [packages/common/src/Task.ts:2797](https://github.com/evoluhq/evolu/blob/e7144e2bbe9069362b62dec1b64a8aa922b8f1b0/packages/common/src/Task.ts#L2797)

Creates a [MutexByKey](https://evolu.dev/docs/api-reference/common/Task/interfaces/MutexByKey).