to configure sub-buffers for them:
* **High event throughput**: in general, prefer bigger sub-buffers to
- lower the risk of losing events. Having bigger sub-buffers will
- also ensure a lower sub-buffer switching frequency. The number of
- sub-buffers is only meaningful if the channel is in overwrite mode:
- in this case, if a sub-buffer overwrite happens, you will still have
- the other sub-buffers left unaltered.
+ lower the risk of losing events. Having bigger sub-buffers
+ also ensures a lower sub-buffer switching frequency. The number of
+ sub-buffers is only meaningful if the channel is enabled in
+ overwrite mode: in this case, if a sub-buffer overwrite happens, the
+ other sub-buffers are left unaltered.
* **Low event throughput**: in general, prefer smaller sub-buffers
since the risk of losing events is already low. Since events
happen less frequently, the sub-buffer switching frequency should
following configurations have the same ring buffer total size:
<script type="text/javascript">
- document.write('<div class="img img-100" id="docsvg-channel-subbuf-size-vs-count-anim"></div>');
+ document.write('<div class="anim img img-100" id="docsvg-channel-subbuf-size-vs-count-anim"></div>');
$(document).ready(function() {
var doc = SVG('docsvg-channel-subbuf-size-vs-count-anim');
doc.viewbox(0, 0, 4.25, 2);
- var rb2 = rbBuildStdAnimated(doc, {
+ var stdRb2 = rbBuildStdAnimated(doc, {
div: 2,
oR: 0.97,
evDur: 300,
evPerSubBuf: 17,
consumerAfter: 25
});
- var rb16 = rbBuildStdAnimated(doc, {
+ var stdRb16 = rbBuildStdAnimated(doc, {
div: 8,
oR: 0.97,
evDur: 300,
consumerAfter: 6
});
- rb2.getGroup().move(1, 1);
- rb16.getGroup().move(3.25, 1);
+ stdRb2.rb.getGroup().move(1, 1);
+ stdRb16.rb.getGroup().move(3.25, 1);
+ rbSetParentPlayIcon(doc, function() {
+ rbStdStart(stdRb2);
+ rbStdStart(stdRb16);
+ });
});
</script>