Good Morning,
Software version: OpcLabs.QuickOpc Nuget Package: 5.71.123
We are using an EasyDAClient instance to connect with a Server where we do the following:
a) Register and verify our license using the RegisterManagedResourceWithExistenceCheck()
This is successful.
b) Register a callback with ItemChanged for change notifications for subscriptions.
c) Subscribe for change notifications using SubscribeMultipleItems(…)
d) We also perform on demand writes using: WriteMultipleItemValues(…)
e) We also perform on demand reads using: ReadMultipleItems(…)
We appreciate with EasyDAClient the connection is maintained on demand where it will be established by the library to support each of the activities above, namely subscription, write and read, and subsequently released when its not required.
We have the requirement to release the connection and we do this by:
• Ensuring no calls are made to read or write methods.
• Unsubscribe calling UnsubscribeAllItems()
When we do this we observe that the connection is eventually released, however it takes approximately 30 seconds for the connection to be released.
The documentation here:
EasyDAClientHoldPeriods Class Members (doc-that.com)
refers to Hold periods, ItemDetach, ServerDetach, TopicRead & TopicWrite. We have set these to a range of different values, ranging from 5 seconds to 40 seconds and have observed no change in the time taken to release the connection.
Please note:
• we ensure the Hold Period Instance parameters are set immediately after the EasyDAClient is constructed before any read/write or subscription calls are made.
• we appreciate the value for the hold periods is in milliseconds.
Could you please confirm:
• How we can release the connection in a timely manner?
• Can the time to release the connection be configured using the documented Hold Period Instance Parameters discussed above?
Kind Regards, ncorbett.