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: 1026
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: 1919

Currently Online:
64 Guest(s)

Currently Browsing this Page:
1 Guest(s)

Top Posters:

Heikki Tahvanainen: 402

hbrackel: 144

rocket science: 88

pramanj: 86

Francesco Zambon: 83

Ibrahim: 78

Sabari: 62

kapsl: 57

gjevremovic: 49

Xavier: 43

Member Stats:

Guest Posters: 0

Members: 734

Moderators: 7

Admins: 1

Forum Stats:

Groups: 3

Forums: 15

Topics: 1523

Posts: 6449

Newest Members:

christamcdowall, redaahern07571, nigelbdhmp, travistimmons, AnnelCib, dalenegettinger, howardkennerley, Thomassnism, biancacraft16, edgardo3518

Moderators: Jouni Aro: 1026, Pyry: 1, Petri: 0, Bjarne Boström: 1026, Jimmy Ni: 26, Matti Siponen: 346, Lusetti: 0

Administrators: admin: 1