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
Concurrent calls to UaVariableNode updateValue() thread safe?
October 2, 2018
15:02, EEST
Avatar
RoarF
Member
Members
Forum Posts: 5
Member Since:
April 24, 2017
sp_UserOfflineSmall Offline

Hi,

In com.prosysopc.ua.server.nodes.UaVariableNode.updateValue() we have had some cases where two threads were allowed to write to this same object concurrently. Is these objects thread safe?

October 2, 2018
17:20, EEST
Avatar
Bjarne Boström
Moderator
Moderators
Forum Posts: 1068
Member Since:
April 3, 2012
sp_UserOfflineSmall Offline

Hi,

In general we do try to make/fix most methods as threadsafe as possible, from the point of view that they should not randomly break on any thread execution scheduling. In practice however this is (unfortunately) not documented and not all methods might be threadsafe.

Multiple concurrent updateValue/setValue (at least in the context of CacheVariable that most of them are) generally do not make sense, but in general the end result should be that one of them (randomly) is the final value of the node. In general java does not have any deterministic locking (depends on the JVM impls), so the last thread to put the value to the node wins. The backed field is volatile, so it should be seen by all threads calling getValue().

What kinds of problems did you encounter?

October 4, 2018
10:37, EEST
Avatar
RoarF
Member
Members
Forum Posts: 5
Member Since:
April 24, 2017
sp_UserOfflineSmall Offline

Hi,

Thanks for answer. We did not encounter any problem. This was only theoretical. I’m investigating if this might have caused invalid values of any sort in the past.

Forum Timezone: Europe/Helsinki
Most Users Ever Online: 1919
Currently Online: Oleksandr
Guest(s) 81
Top Posters:
Heikki Tahvanainen: 402
hbrackel: 144
rocket science: 100
pramanj: 86
Francesco Zambon: 83
Ibrahim: 78
Sabari: 62
kapsl: 57
gjevremovic: 49
Xavier: 43
Member Stats:
Guest Posters: 0
Members: 773
Moderators: 7
Admins: 1
Forum Stats:
Groups: 3
Forums: 15
Topics: 1558
Posts: 6567
Newest Members:
aracelyhaley4, raphaelschonell, Ashmag, kathyreimann56, brittanylemos, dorthycundiff76, PromotionToold, CHHinrichs, rodricklienhop, jose_Wanderlei
Moderators: Jouni Aro: 1039, Pyry: 1, Petri: 1, Bjarne Boström: 1054, Jimmy Ni: 26, Matti Siponen: 359, Lusetti: 0
Administrators: admin: 1