The Talon Manual

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

div
idtoc
classtoc
div
classtocTitle

In This Section

div
classtocContents

Table of Contents
maxLevel2
indent8px
stylenone

Overview

Excerpt

The X Platform's Application Data Modeling (ADM) framework allows modeling of primitive, message and entity fields as arrays. For applications that are highly latency sensitive, it is useful to be able to work with such fields in a zero garbage fashion so that gc pauses can be avoided. Arrays are tricky to deal with from a garbage perspective because pooling of arrays presented directly to an application is quite difficult to achieve (imagine trying to pool arrays of every possible size needed by an application). 

So, as of the 3.1 release of the X Platform, zero garbage Iterator accessors are provided which allow more efficient array management behind the scenes while also encapsulating the backing storage mechanism. Application messages and entities generated with XBuf encoding type and pooling enabled can achieve zero garbage manipulation of array fields via XBuf's setXXXFrom(XIterator) and getXXXIterator() methods. Protobuf and Json Encoded messages and entities are not pooled and are therefore not zero garbage. This article discusses techniques for avoiding garbage using these accessor variants. 

...