# cDirectVM

Produces and consumes messages synchronously in different threads within a single CamelContext and across CamelContexts in the same JVM. You can use this mechanism to communicate across Web applications.

For more information, see the Apache camel documentation https://camel.apache.org/components/latest/.

## cDirectVM Standard properties

These properties are used to configure cDirectVM running in the Standard Job framework.

The Standard cDirectVM component belongs to the Core family.

## Basic settings

| Properties | Description |
| --- | --- |
| When using as a start component in a Route: |  |
| Endpoint Name | Type in any string that uniquely identifies the endpoint. |
| When using as a middle or end component in a Route: |  |
| Select From Existing(s) | Click this radio button to select an existing consumer. Click<br>[...] beside the Consumer field to show the existing<br>consumer(s) and select the one to consume the<br>message. |
| Input Endpoint Name | Click this radio button to enter the name of the consumer in the<br>Endpoint Name field. |
| Block if Consumer is not<br>active | Select this check box to let the producer block if the consumer is not active in the<br>Timeout period. |
| Timeout | This option appears when the block is enabled. Specify the time in<br>milliseconds before the producer stops waiting for the consumer to<br>become active. |

## Usage

| Usage guidance | Description |
| --- | --- |
| **Usage rule** | cDirectVM is used as a start,<br>middle, or end component in a Route. |
| Limitation | n/a |

**Related concepts**

* [Direct and synchronous messaging within the same JVM](https://help.qlik.com/talend/en-US/mediation-components/8.0/mediation-direct/cdirectvm-ctimer-csetheader-cprocessor-direct-and-synchronous-messaging-within-same-jvm)