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

```ts
function createSharedWorker<Input, Output>(
  initWorker: (self: SharedWorkerSelf<Input, Output>) => void,
): SharedWorker<Input, Output>;
```

Defined in: [packages/common/src/Worker.ts:225](https://github.com/evoluhq/evolu/blob/e7144e2bbe9069362b62dec1b64a8aa922b8f1b0/packages/common/src/Worker.ts#L225)

Creates an in-memory [SharedWorker](https://evolu.dev/docs/api-reference/common/Worker/interfaces/SharedWorker).

This is a memory-only fallback for platforms without native SharedWorker
support. Connection is synchronous while message delivery is asynchronous
in-process.

Intended usage is one shared worker instance per process/app runtime.