There is nothing in the HLLAPI design that manages the allocation of "unused" sessions. Instead, it requires the caller using the connect request to specify the session to connect to.
This leaves the logic to the caller, which complicates the process significantly given the multi-threaded, concurrent nature of environments such as web servers.
With FlyHLLAPI, the connect request provides the ability to specify * (asterisk) as the session ID to connect to. If asterisk is passed, the session ID will be returned as either a letter or text numeric value (depending on a configuration option).
By providing support for the allocation of unused sessions, the FlyHLLAPI implementation removes the need to perform this potentially complex task from the application programmer.