> For the complete documentation index, see [llms.txt](https://docs.workersforlabview.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.workersforlabview.io/fundamental-concepts/launcher-vis.md).

# Launcher VIs

{% hint style="info" %}
You can create Launcher VIs with the [Create Launcher VI](/workers-tools/workers-tools-menu/create-launcher-vi.md) tool.
{% endhint %}

A Launcher VI is a VI that you run to launch the [Head Worker](/fundamental-concepts/important-terms.md#head-worker) of a Workers application.

By default, a Worker cannot launch/run itself, and this is the reason we need a Launcher VI.

![Launcher VI launches head Worker of application.](/files/uq5OvpYXsrMRDz9dfsWx)

The following image shows a Launcher VI for a Worker in a LabVIEW project, and below that the block diagram of the Launcher VI.

![](/files/AoQePwsy1tw9zlecE5Kv)

![Launcher - Worker A.vi](/files/rCeNt8yzrF3Ot627lghi)

A Launcher VI contains (from left to right):

* the class object constant of the application's head Worker
* the Worker's palette VI: *Debug Client Loader.vi*
* the Worker's palette VI: *Setup Head Worker.vi*
* the Main VI (Main.vi) of the application's head Worker.

Running the Launcher VI will launch the application's head Worker along with all of head Worker's statically-linked subWorkers. If the Launcher VI is aborted, then **all** Workers in the application's Worker call-chain hierarchy (both statically-linked and dynamically loaded) will also be immediately aborted.

## Asynchronous Launcher VIs

Asynchronous Launcher VIs will asynchronously launch a Worker's Launcher VI (above) and can be used to load multiple instances of a Workers application. Asynchronous Launcher VIs return the loaded Worker's class object containing only its Public Properties. This object can then be used with a Worker's Public API Request VIs from applications external to the Workers application (eg. TestStand).

{% hint style="success" %}
The Workers 5.0 [DMM HAL Demo Project](/whats-new-in-v5.0/new-features/example-projects.md) and [TCP Server and Client](/getting-started/example-projects.md) example project both launch their respective Worker applications using Asynchronous Launcher VIs.
{% endhint %}
