MessageQs provide more functionality than the Notify module. There are some differences, such as there is no need to hard code the eventIds, the consumer core creates a MessageQ by name. The sending core calls ‘open’ to open a messageQ, if the messageQ has not been created yet, the open call will return an error. Also, MessageQ’s provide for a variable sized message. Some key points regarding MessageQ are that MessageQ is single reader but multiple writer, MessageQ can be used for communication between threads on a single core as well as between threads on multiple cores, and MessageQ can be used for inter-thread communication, it is easy to move the thread to another core (load balancing, etc.).

