Avatar
Please consider registering
guest
sp_LogInOut Log Insp_Registration Register
Register | Lost password?
Advanced Search
Forum Scope


Match



Forum Options



Minimum search word length is 3 characters - maximum search word length is 84 characters
sp_Feed Topic RSSsp_TopicIcon
TUaSubscription Lifetime
August 9, 2023
11:43, EEST
Avatar
Guido Niewerth
Member
Members
Forum Posts: 15
Member Since:
August 23, 2022
sp_UserOfflineSmall Offline

Hello,

who manages the lifetime of a TUaSubscription object? Let’s say I create a subscription like this

void MyClass::create_subscription()
{
clear_subscription();

TUaSubscription* s = new TUaSubscription();
_di_IUaSubscription sub = s->operator _di_IUaSubscription();

// does m_OpcUaClient take ownership of s?
m_OpcUaClient->AddSubscription( sub )

// remember subscription for later use
m_ActiveSubscription = s;
}

Do I have to keep track of s and delete it explicitely, or does TuaClient take ownership of the object and deletes it automatically?
What happens when I remove the subscription by calling TuaClient::RemoveSubscription()?

TUaSubscription* MyClass::get_active_subscription()
{
return m_ActiveSubscription;
}

void MyClass::clear_subscription()
{
TUaSubscription* s = get_active_subscription();
if( s )
{
_di_IUaSubscription sub = s->operator _di_IUaSubscription();
m_OpcUaClient->RemoveSubscription( sub )

// Do I have to delete the active subscription? Or can I just set it to nullptr?
delete m_ActiveSubscription; // ?
m_ActiveSubscription = nullptr;
}
}

Edit:
The same question applies to the TUaMonitoredDataItem. Does TUaSubscription take ownership of TUaMonitoredDataItem when a monitored object is added to the subscription?

Regards,
Guido

August 15, 2023
9:49, EEST
Avatar
Jouni Aro
Moderator
Moderators
Forum Posts: 1029
Member Since:
December 21, 2011
sp_UserOfflineSmall Offline

The subscription is reference counted, so you should just set your field to null. This will ensure that if some other object is still holding a reference to it, it will have a chance to clean up as well, before the subscription is finally deleted.

August 16, 2023
14:29, EEST
Avatar
Guido Niewerth
Member
Members
Forum Posts: 15
Member Since:
August 23, 2022
sp_UserOfflineSmall Offline

Thank your for clarifying.

Kind regards,
Guido

Forum Timezone: Europe/Helsinki
Most Users Ever Online: 1919
Currently Online:
Guest(s) 33
Currently Browsing this Page:
1 Guest(s)
Top Posters:
Heikki Tahvanainen: 402
hbrackel: 144
rocket science: 90
pramanj: 86
Francesco Zambon: 83
Ibrahim: 78
Sabari: 62
kapsl: 57
gjevremovic: 49
Xavier: 43
Member Stats:
Guest Posters: 0
Members: 732
Moderators: 8
Admins: 1
Forum Stats:
Groups: 3
Forums: 15
Topics: 1545
Posts: 6516
Newest Members:
mood edibles, LouieWreve, daniellabdx, janessan21, sammiebeak359, gena7127517, thorstenbouldin, Brett.Rollason, steven014223542, Roberthat
Moderators: Jouni Aro: 1029, Pyry: 1, Petri: 1, Bjarne Boström: 1045, Jimmy Ni: 26, Matti Siponen: 353, Lusetti: 0, Elias: 0
Administrators: admin: 1