Publish and Subscribe Overview

This topic explains the overview of publish and subscribe.

Purpose

Allows global variables to be set and retrieved, and allows subscribers to be notified that variables have changed. Note that you may find such global variables referred to as properties.

Architectural relationships

Publish and Subscribe is implemented on the Kernel side and is accessed from the user side through the RProperty handle.

Description

Publish and Subscribe has three main components: properties, publishers and subscribers.

Properties

A property is a single data value, that can be either a single 32-bit value or a variable length set of bytes referred to as a byte array. A byte array has a maximum size defined by RProperty::KMaxPropertySize.

Publishers

Publishers are threads that define and update a property.

Subscribers

Subscribers are threads that listen for changes to a property, and can get the current value of a property. Typically, a thread gets the value of a property when notified of changes.