Avatar

Please consider registering
guest

sp_LogInOut Log In sp_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 RSS sp_TopicIcon
TUaSubscription Lifetime
August 9, 2023
11:43, EEST
Avatar
Guido Niewerth
Member
Members
Forum Posts: 13
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: 1010
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: 13
Member Since:
August 23, 2022
sp_UserOfflineSmall Offline

Thank your for clarifying.

Kind regards,
Guido

Forum Timezone: Europe/Helsinki

Most Users Ever Online: 518

Currently Online:
13 Guest(s)

Currently Browsing this Page:
1 Guest(s)

Top Posters:

hbrackel: 135

pramanj: 86

Francesco Zambon: 81

rocket science: 77

Ibrahim: 76

Sabari: 62

kapsl: 57

gjevremovic: 49

Xavier: 43

fred: 41

Member Stats:

Guest Posters: 0

Members: 683

Moderators: 16

Admins: 1

Forum Stats:

Groups: 3

Forums: 15

Topics: 1467

Posts: 6261

Newest Members:

digitechroshni, LouieWreve, Kickbiche, karrimacvitie5, graciela2073, sagarchau, elviralangwell4, Donnavek, Eddiefauth, DonaldPooma

Moderators: Jouni Aro: 1010, Otso Palonen: 32, Tuomas Hiltunen: 5, Pyry: 1, Petri: 0, Bjarne Boström: 983, Heikki Tahvanainen: 402, Jukka Asikainen: 1, moldzh08: 0, Jimmy Ni: 26, Teppo Uimonen: 21, Markus Johansson: 42, Niklas Nurminen: 0, Matti Siponen: 321, Lusetti: 0, Ari-Pekka Soikkeli: 5

Administrators: admin: 1