cancel
Showing results for 
Search instead for 
Did you mean: 

Is the Java API thread safe?

Rick_Pineda
Confirmed Champ
Confirmed Champ

Does anyone know if the Java API is thread safe?

1 ACCEPTED ANSWER

Tyler_Sorber
Star Collaborator
Star Collaborator

Hi Rick

In general, the Unity API is not a thread safe API.  The Application Server on the other hand is obviously thread safe.  With that being said, if a solution utilizing the Unity API were to be multi-threaded, each individual thread would need a seperate connection to the Application Server.

There are some considerations in doing this, such as licensing and workload on the Application Server.  If you have further questions on this topic, feel free to respond to this post, or contact your first line of support.

View answer in original post

3 REPLIES 3

Tyler_Sorber
Star Collaborator
Star Collaborator

Hi Rick

In general, the Unity API is not a thread safe API.  The Application Server on the other hand is obviously thread safe.  With that being said, if a solution utilizing the Unity API were to be multi-threaded, each individual thread would need a seperate connection to the Application Server.

There are some considerations in doing this, such as licensing and workload on the Application Server.  If you have further questions on this topic, feel free to respond to this post, or contact your first line of support.

Tyler, thanks for the response. Can you please expand on the licensing considerations? Can you please explain for each license type?

Not a problem, as far as licensing, all three of the Licensing Structures will behave the same way (Concurrent, Named, Query Metering), aside from documented caveats in the SDK. For information on Licensing Limitations, I would suggest reviewing the SDK, and having a discussion with your first line of support.

Effectively, in the Threaded environment, Connect will need to be called for each Thread that is created. For example, in a solution that utilizes 4 threads, Connect will need called on each thread, using 4 Licenses for what the User/Processor sees as a single execution. In all, if Application Management is not applied correctly, the OnBase System can run out of available licenses very quickly; you will need to ensure that each application object, on each thread, is Disconnected appropriately.
Getting started

Find what you came for

We want to make your experience in Hyland Connect as valuable as possible, so we put together some helpful links.