mirror of https://github.com/commaai/cereal.git
Update README.md
This commit is contained in:
parent
615aea9b55
commit
7c00db60e5
|
@ -1,7 +1,7 @@
|
||||||
# MSGQ: A lock free single producer multi consumer message queue
|
# MSGQ: A lock free single producer multi consumer message queue
|
||||||
|
|
||||||
## What is MSGQ?
|
## What is this library?
|
||||||
MSGQ is a system to pass messages from a single producer to multiple consumers. All the consumers need to be able to receive all the messages. It is designed to be a high performance replacement for ZMQ-like SUB/PUB patterns. It uses a ring buffer in shared memory to efficiently read and write data. Each read requires a copy. Writing can be done without a copy, as long as the size of the data is known in advance.
|
MSGQ is a generic high performance IPC pub sub system with a single publisher and multiple subscribers. MSGQ is designed to be a high performance replacement for ZMQ-like SUB/PUB patterns. It uses a ring buffer in shared memory to efficiently read and write data. Each read requires a copy. Writing can be done without a copy, as long as the size of the data is known in advance. While MSGQ is the core of this library, this library also allows replacing the MSGQ backend with ZMQ or a spoofed implementation that can be used for deterministic testing. This library also contains visionipc, an IPC system specifically for large continiguous buffers (like images/video).
|
||||||
|
|
||||||
## Storage
|
## Storage
|
||||||
The storage for the queue consists of an area of metadata, and the actual buffer. The metadata contains:
|
The storage for the queue consists of an area of metadata, and the actual buffer. The metadata contains:
|
||||||
|
|
Loading…
Reference in New Issue