kDefaultBufferSize constant
By default we store one message per channel. There are tradeoffs associated with any size. The correct size should be chosen for the semantics of your channel.
Size 0 implies you want to ignore any message that gets sent before the engine is ready (keeping in mind there is no way to know when the engine is ready).
Size 1 implies that you only care about the most recent value.
Size >1 means you want to process every single message and want to chose a buffer size that will avoid any overflows.
Implementation
static const int kDefaultBufferSize = 1