Message Ownership
Either your program code owns a message, or the TIBCO FTL library owns it. Ownership depends in part upon message origin, but releasing a message can change its ownership.
Release of Message Ownership
Subscribers can release ownership of inbound messages. Such released inbound messages belong to your program code, effective upon dispatch to your callback.
To enable release to callback behavior, the program must supply a property to the subscriber create call.
| Origin | Released | Ownership |
|---|---|---|
| Local | No | Your program code owns a local message. |
| Inbound | No | The library owns an inbound message. |
| Release to callback | Your program code owns an inbound message that the subscriber has released to the callback. |
Destruction
The responsibility to destroy a message depends entirely on the current ownership of a message.
| Ownership | Responsibility to Destroy |
|---|---|
| Program code | Program code |
| Library | Library |
SubMessages
When program code owns a message that contains nested submessages, destroying the outer message does not automatically destroy submessages contained within its fields or arrays. To effectively reclaim storage, the program must first destroy all the inner submessages and then the outer message.