UM .NET API 6.17.1

- Main Page
- Related Pages
- Packages
- Classes

- Class List
- Class Hierarchy
- Class Members

Public Member Functions | List of all members
com.latencybusters.lbm.LBMObjectRecyclerBase Class Reference
Inheritance diagram for com.latencybusters.lbm.LBMObjectRecyclerBase:

## Public Member Functions
virtual void | doneWithMessage (LBMMessage obj)
| If dispose is not called on an LBMMessage in the callback, it is retained for use in the application. Once the application is finished with the LBMMessage, it should call dispose and then pass it to this method to make it available for reuse, instead of letting it be garbage collected. More...
virtual LBMMessage | retrieveMessage (Object cbObj)
| LBM will call this method to attempt to retrieve a LBMMessage object instance that it can use instead of creating a new instance to reduce garbage collection. It will reset the state of the LBMMessage once it is retrieved and then use it as if it were a new instance. Returning null causes LBM to create a new instance as if there were no recycler. More...
virtual void | doneWithReceiverStatistics (LBMReceiverStatistics obj)
| Once the application is finished with the stats object, it should NOT call dispose but rather should pass it to this method to make the object instance available for reuse, instead of letting it be garbage collected. More...
virtual LBMReceiverStatistics | retrieveReceiverStatistics (Object cbObj)
| LBM will call this method to attempt to retrieve a stats object instance that it can use instead of creating a new instance to reduce garbage collection. It will refresh the stats object and then use it as if it were a new instance. Returning null causes LBM to create a new instance as if there were no recycler. More...
virtual void | doneWithSourceStatistics (LBMSourceStatistics obj)
| Once the application is finished with the stats object, it should NOT call dispose but rather should pass it to this method to make the object instance available for reuse, instead of letting it be garbage collected. More...
virtual LBMSourceStatistics | retrieveSourceStatistics (Object cbObj)
| LBM will call this method to attempt to retrieve a stats object instance that it can use instead of creating a new instance to reduce garbage collection. It will refresh the stats object and then use it as if it were a new instance. Returning null causes LBM to create a new instance as if there were no recycler. More...
virtual void | doneWithContextStatistics (LBMContextStatistics obj)
| Once the application is finished with the stats object, it should NOT call dispose but rather should pass it to this method to make the object instance available for reuse, instead of letting it be garbage collected. More...
virtual LBMContextStatistics | retrieveContextStatistics (Object cbObj)
| LBM will call this method to attempt to retrieve a stats object instance that it can use instead of creating a new instance to reduce garbage collection. It will refresh the stats object and then use it as if it were a new instance. Returning null causes LBM to create a new instance as if there were no recycler. More...
virtual void | doneWithImmediateMessageReceiverStatistics (LBMImmediateMessageReceiverStatistics obj)
| Once the application is finished with the stats object, it should NOT call dispose but rather should pass it to this method to make the object instance available for reuse, instead of letting it be garbage collected. More...
virtual LBMImmediateMessageReceiverStatistics | retrieveImmediateMessageReceiverStatistics (Object cbObj)
| LBM will call this method to attempt to retrieve a stats object instance that it can use instead of creating a new instance to reduce garbage collection. It will refresh the stats object and then use it as if it were a new instance. Returning null causes LBM to create a new instance as if there were no recycler. More...
virtual void | doneWithImmediateMessageSourceStatistics (LBMImmediateMessageSourceStatistics obj)
| Once the application is finished with the stats object, it should NOT call dispose but rather should pass it to this method to make the object instance available for reuse, instead of letting it be garbage collected. More...
virtual LBMImmediateMessageSourceStatistics | retrieveImmediateMessageSourceStatistics (Object cbObj)
| LBM will call this method to attempt to retrieve a stats object instance that it can use instead of creating a new instance to reduce garbage collection. It will refresh the stats object and then use it as if it were a new instance. Returning null causes LBM to create a new instance as if there were no recycler. More...
virtual void | doneWithEventQueueStatistics (LBMEventQueueStatistics obj)
| Once the application is finished with the stats object, it should NOT call dispose but rather should pass it to this method to make the object instance available for reuse, instead of letting it be garbage collected. More...
virtual LBMEventQueueStatistics | retrieveEventQueueStatistics (Object cbObj)
| LBM will call this method to attempt to retrieve a stats object instance that it can use instead of creating a new instance to reduce garbage collection. It will refresh the stats object and then use it as if it were a new instance. Returning null causes LBM to create a new instance as if there were no recycler. More...
virtual void | doneWithSourceEvent (LBMSourceEvent obj)
| If dispose is not called on an LBMSourceEvent in the callback, it is retained for use in the application. Once the application is finished with the LBMSourceEvent, it should call dispose and then pass it to this method to make it available for reuse, instead of letting it be garbage collected. More...
virtual LBMSourceEvent | retrieveSourceEvent (Object cbObj)
| LBM will call this method to attempt to retrieve an LBMSourceEvent object instance that it can use instead of creating a new instance to reduce garbage collection. It will reset the state of the LBMSourceEvent once it is retrieved and then use it as if it were a new instance. Returning null causes LBM to create a new instance as if there were no recycler. More...
virtual void | doneWithContextSourceEvent (LBMContextSourceEvent obj)
| If dispose is not called on an LBMContextSourceEvent in the callback, it is retained for use in the application. Once the application is finished with the LBMContextSourceEvent, it should call dispose and then pass it to this method to make it available for reuse, instead of letting it be garbage collected. More...
virtual LBMContextSourceEvent | retrieveContextSourceEvent (Object cbObj)
| LBM will call this method to attempt to retrieve an LBMContextSourceEvent object instance that it can use instead of creating a new instance to reduce garbage collection. It will reset the state of the LBMContextSourceEvent once it is retrieved and then use it as if it were a new instance. Returning null causes LBM to create a new instance as if there were no recycler. More...
virtual void | close ()
| A method that should be overridden by derived classes, if needed, to provide a way to clean up objects referenced by the recycler (like stats objects).

## Detailed Description

This is an abstract base class, and should be subclassed to override any appropriate non-functional methods, such as doneWith... or retrieve... (whose default implementation in the base class is to always return null). LBMObjectRecycler is provided as a basic general implementation of this class.

After being set in any of the UM attribute classes with the setObjectRecycler() method, UM uses the LBMObjectRecyclerBase internally, instead of automatically creating a new Object of the different supported types.

UM calls the appropriate retrieve method expecting either an object that it can use, or null. In the latter case UM creates the new object as if there were no recycler available. Once finished with an object, calling the appropriate doneWith method makes it available for future retrieve calls.

When implementing your own recycler from this parent class, note that the retrieve methods (below) are called from within the context thread as part of the callbacks. Hence, do not perform any unsafe API calls from within a retrieve method.

## Member Function Documentation

virtual void com.latencybusters.lbm.LBMObjectRecyclerBase.doneWithContextSourceEvent | ( | LBMContextSourceEvent | obj | ) |
| virtual

If dispose is not called on an LBMContextSourceEvent in the callback, it is retained for use in the application. Once the application is finished with the LBMContextSourceEvent, it should call dispose and then pass it to this method to make it available for reuse, instead of letting it be garbage collected.

Parameters

  obj | The LBMContextSourceEvent object that the application is done with and is ready for reuse

Reimplemented in com.latencybusters.lbm.LBMObjectRecycler.

virtual void com.latencybusters.lbm.LBMObjectRecyclerBase.doneWithContextStatistics | ( | LBMContextStatistics | obj | ) |
| virtual

Once the application is finished with the stats object, it should NOT call dispose but rather should pass it to this method to make the object instance available for reuse, instead of letting it be garbage collected.

Parameters

  obj | The LBMContextStatistics object that the application is done with and is ready for reuse

Reimplemented in com.latencybusters.lbm.LBMObjectRecycler.

virtual void com.latencybusters.lbm.LBMObjectRecyclerBase.doneWithEventQueueStatistics | ( | LBMEventQueueStatistics | obj | ) |
| virtual

Once the application is finished with the stats object, it should NOT call dispose but rather should pass it to this method to make the object instance available for reuse, instead of letting it be garbage collected.

Parameters

  obj | The LBMEventQueueStatistics object that the application is done with and is ready for reuse

Reimplemented in com.latencybusters.lbm.LBMObjectRecycler.

virtual void com.latencybusters.lbm.LBMObjectRecyclerBase.doneWithImmediateMessageReceiverStatistics | ( | LBMImmediateMessageReceiverStatistics | obj | ) |
| virtual

Once the application is finished with the stats object, it should NOT call dispose but rather should pass it to this method to make the object instance available for reuse, instead of letting it be garbage collected.

Parameters

  obj | The LBMImmediateMessageReceiverStatistics object that the application is done with and is ready for reuse

Reimplemented in com.latencybusters.lbm.LBMObjectRecycler.

virtual void com.latencybusters.lbm.LBMObjectRecyclerBase.doneWithImmediateMessageSourceStatistics | ( | LBMImmediateMessageSourceStatistics | obj | ) |
| virtual

Once the application is finished with the stats object, it should NOT call dispose but rather should pass it to this method to make the object instance available for reuse, instead of letting it be garbage collected.

Parameters

  obj | The LBMImmediateMessageSourceStatistics object that the application is done with and is ready for reuse

Reimplemented in com.latencybusters.lbm.LBMObjectRecycler.

virtual void com.latencybusters.lbm.LBMObjectRecyclerBase.doneWithMessage | ( | LBMMessage | obj | ) |
| virtual

If dispose is not called on an LBMMessage in the callback, it is retained for use in the application. Once the application is finished with the LBMMessage, it should call dispose and then pass it to this method to make it available for reuse, instead of letting it be garbage collected.

Parameters

  obj | The LBMMessage object that the application is done with and is ready for reuse

Reimplemented in com.latencybusters.lbm.LBMObjectRecycler.

virtual void com.latencybusters.lbm.LBMObjectRecyclerBase.doneWithReceiverStatistics | ( | LBMReceiverStatistics | obj | ) |
| virtual

Once the application is finished with the stats object, it should NOT call dispose but rather should pass it to this method to make the object instance available for reuse, instead of letting it be garbage collected.

Parameters

  obj | The LBMReceiverStatistics object that the application is done with and is ready for reuse

Reimplemented in com.latencybusters.lbm.LBMObjectRecycler.

virtual void com.latencybusters.lbm.LBMObjectRecyclerBase.doneWithSourceEvent | ( | LBMSourceEvent | obj | ) |
| virtual

If dispose is not called on an LBMSourceEvent in the callback, it is retained for use in the application. Once the application is finished with the LBMSourceEvent, it should call dispose and then pass it to this method to make it available for reuse, instead of letting it be garbage collected.

Parameters

  obj | The LBMSourceEvent object that the application is done with and is ready for reuse

Reimplemented in com.latencybusters.lbm.LBMObjectRecycler.

virtual void com.latencybusters.lbm.LBMObjectRecyclerBase.doneWithSourceStatistics | ( | LBMSourceStatistics | obj | ) |
| virtual

Once the application is finished with the stats object, it should NOT call dispose but rather should pass it to this method to make the object instance available for reuse, instead of letting it be garbage collected.

Parameters

  obj | The LBMSourceStatistics object that the application is done with and is ready for reuse

Reimplemented in com.latencybusters.lbm.LBMObjectRecycler.

virtual LBMContextSourceEvent com.latencybusters.lbm.LBMObjectRecyclerBase.retrieveContextSourceEvent | ( | Object | cbObj | ) |
| virtual

LBM will call this method to attempt to retrieve an LBMContextSourceEvent object instance that it can use instead of creating a new instance to reduce garbage collection. It will reset the state of the LBMContextSourceEvent once it is retrieved and then use it as if it were a new instance. Returning null causes LBM to create a new instance as if there were no recycler.

Parameters

  cbObj | The callback object token that was stored when setting LBMObjectRecycler in the attributes

Returns
  Either null or a valid LBMContextSourceEvent object will be returned

Reimplemented in com.latencybusters.lbm.LBMObjectRecycler.

Referenced by com.latencybusters.lbm.LBMContext.removeSourceNotifyCallback().

virtual LBMContextStatistics com.latencybusters.lbm.LBMObjectRecyclerBase.retrieveContextStatistics | ( | Object | cbObj | ) |
| virtual

LBM will call this method to attempt to retrieve a stats object instance that it can use instead of creating a new instance to reduce garbage collection. It will refresh the stats object and then use it as if it were a new instance. Returning null causes LBM to create a new instance as if there were no recycler.

Parameters

  cbObj | The callback object token that was stored when setting LBMObjectRecycler in the attributes

Returns
  Either null or a valid LBMContextStatistics object will be returned

Reimplemented in com.latencybusters.lbm.LBMObjectRecycler.

Referenced by com.latencybusters.lbm.LBMContext.getStatistics(), and com.latencybusters.lbm.LBMMonitorReceiver.removeStatisticsCallback().

virtual LBMEventQueueStatistics com.latencybusters.lbm.LBMObjectRecyclerBase.retrieveEventQueueStatistics | ( | Object | cbObj | ) |
| virtual

LBM will call this method to attempt to retrieve a stats object instance that it can use instead of creating a new instance to reduce garbage collection. It will refresh the stats object and then use it as if it were a new instance. Returning null causes LBM to create a new instance as if there were no recycler.

Parameters

  cbObj | The callback object token that was stored when setting LBMObjectRecycler in the attributes

Returns
  Either null or a valid LBMEventQueueStatistics object will be returned

Reimplemented in com.latencybusters.lbm.LBMObjectRecycler.

Referenced by com.latencybusters.lbm.LBMEventQueue.getStatistics(), and com.latencybusters.lbm.LBMMonitorReceiver.removeStatisticsCallback().

virtual LBMImmediateMessageReceiverStatistics com.latencybusters.lbm.LBMObjectRecyclerBase.retrieveImmediateMessageReceiverStatistics | ( | Object | cbObj | ) |
| virtual

LBM will call this method to attempt to retrieve a stats object instance that it can use instead of creating a new instance to reduce garbage collection. It will refresh the stats object and then use it as if it were a new instance. Returning null causes LBM to create a new instance as if there were no recycler.

Parameters

  cbObj | The callback object token that was stored when setting LBMObjectRecycler in the attributes

Returns
  Either null or a valid LBMImmediateMessageReceiverStatistics object will be returned

Reimplemented in com.latencybusters.lbm.LBMObjectRecycler.

Referenced by com.latencybusters.lbm.LBMContext.getImmediateMessageReceiverStatistics(), and com.latencybusters.lbm.LBMMonitorReceiver.removeStatisticsCallback().

virtual LBMImmediateMessageSourceStatistics com.latencybusters.lbm.LBMObjectRecyclerBase.retrieveImmediateMessageSourceStatistics | ( | Object | cbObj | ) |
| virtual

LBM will call this method to attempt to retrieve a stats object instance that it can use instead of creating a new instance to reduce garbage collection. It will refresh the stats object and then use it as if it were a new instance. Returning null causes LBM to create a new instance as if there were no recycler.

Parameters

  cbObj | The callback object token that was stored when setting LBMObjectRecycler in the attributes

Returns
  Either null or a valid LBMImmediateMessageSourceStatistics object will be returned

Reimplemented in com.latencybusters.lbm.LBMObjectRecycler.

Referenced by com.latencybusters.lbm.LBMContext.getImmediateMessageSourceStatistics(), and com.latencybusters.lbm.LBMMonitorReceiver.removeStatisticsCallback().

virtual LBMMessage com.latencybusters.lbm.LBMObjectRecyclerBase.retrieveMessage | ( | Object | cbObj | ) |
| virtual

LBM will call this method to attempt to retrieve a LBMMessage object instance that it can use instead of creating a new instance to reduce garbage collection. It will reset the state of the LBMMessage once it is retrieved and then use it as if it were a new instance. Returning null causes LBM to create a new instance as if there were no recycler.

Parameters

  cbObj | The callback object token that was stored when setting LBMObjectRecycler in the attributes

Returns
  Either null or a valid LBMMessage object will be returned

Reimplemented in com.latencybusters.lbm.LBMObjectRecycler.

Referenced by com.latencybusters.lbm.LBMContext.allocTopic(), com.latencybusters.lbm.LBMHFX.onReceive(), com.latencybusters.lbm.LBMReceiver.removeReceiver(), com.latencybusters.lbm.LBMWildcardReceiver.removeReceiver(), and com.latencybusters.lbm.LBMRequest.removeResponseCallback().

virtual LBMReceiverStatistics com.latencybusters.lbm.LBMObjectRecyclerBase.retrieveReceiverStatistics | ( | Object | cbObj | ) |
| virtual

LBM will call this method to attempt to retrieve a stats object instance that it can use instead of creating a new instance to reduce garbage collection. It will refresh the stats object and then use it as if it were a new instance. Returning null causes LBM to create a new instance as if there were no recycler.

Parameters

  cbObj | The callback object token that was stored when setting LBMObjectRecycler in the attributes

Returns
  Either null or a valid LBMReceiverStatistics object will be returned

Reimplemented in com.latencybusters.lbm.LBMObjectRecycler.

Referenced by com.latencybusters.lbm.LBMContext.getReceiverStatistics(), com.latencybusters.lbm.LBMHFXReceiver.getStatistics(), com.latencybusters.lbm.LBMReceiver.getStatistics(), and com.latencybusters.lbm.LBMMonitorReceiver.removeStatisticsCallback().

virtual LBMSourceEvent com.latencybusters.lbm.LBMObjectRecyclerBase.retrieveSourceEvent | ( | Object | cbObj | ) |
| virtual

LBM will call this method to attempt to retrieve an LBMSourceEvent object instance that it can use instead of creating a new instance to reduce garbage collection. It will reset the state of the LBMSourceEvent once it is retrieved and then use it as if it were a new instance. Returning null causes LBM to create a new instance as if there were no recycler.

Parameters

  cbObj | The callback object token that was stored when setting LBMObjectRecycler in the attributes

Returns
  Either null or a valid LBMSourceEvent object will be returned

Reimplemented in com.latencybusters.lbm.LBMObjectRecycler.

Referenced by com.latencybusters.lbm.LBMSource.removeSourceCallback().

virtual LBMSourceStatistics com.latencybusters.lbm.LBMObjectRecyclerBase.retrieveSourceStatistics | ( | Object | cbObj | ) |
| virtual

LBM will call this method to attempt to retrieve a stats object instance that it can use instead of creating a new instance to reduce garbage collection. It will refresh the stats object and then use it as if it were a new instance. Returning null causes LBM to create a new instance as if there were no recycler.

Parameters

  cbObj | The callback object token that was stored when setting LBMObjectRecycler in the attributes

Returns
  Either null or a valid LBMSourceStatistics object will be returned

Reimplemented in com.latencybusters.lbm.LBMObjectRecycler.

Referenced by com.latencybusters.lbm.LBMContext.getSourceStatistics(), com.latencybusters.lbm.LBMSource.getStatistics(), and com.latencybusters.lbm.LBMMonitorReceiver.removeStatisticsCallback().

The documentation for this class was generated from the following file:

- LBMObjectRecyclerBase.cs