Make ListenersBroker.getInstance() lockless 18/96618/2
authorRobert Varga <robert.varga@pantheon.tech>
Thu, 8 Jul 2021 18:55:25 +0000 (20:55 +0200)
committerRobert Varga <nite@hq.sk>
Fri, 9 Jul 2021 09:28:22 +0000 (09:28 +0000)
commit1a6c771a82975a09b7b0f7c2ab7bd5d3f15495b9
tree8df493140162b6bd3bfbab1cd354cd7ab99d9f58
parentf7444a0bc1a8435be8e3ce62da88be0863447ff0
Make ListenersBroker.getInstance() lockless

While this is a huge antipattern in terms of retained global state,
we do not need to bounce a global lock to access it.

Use Initialization-on-demand holder idiom to make the access completely
lockless.

Change-Id: I374737f2dc5b3b07226eb7bbffcaaf2665cc8967
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
(cherry picked from commit 27c8ce3272443809c6607e8c5da347c41970f6f1)
restconf/restconf-nb-rfc8040/src/main/java/org/opendaylight/restconf/nb/rfc8040/streams/listeners/ListenersBroker.java