CID-17581: Bad choice of lock object - Potential lock collisions
at class `FileProcessId` method `getpid` with error message
Interned string as a lock may cause deadlocks or performance problems if a library also uses the interned string as a lock.
string_literal: The string literal "0x" is an interned string.
interned_string_lock: Locking on an interned string can cause unexpected locking collisions with third party code.
Instead of using "0x" as a lock, create a final field of type Object which is only used as a lock.
See Java examples at Coverity page . The explanation there is that
String literals are centrally interned and could also be locked on by a
library, causing you to potentially have deadlocks or lock collisions
with other code.
There are several places  on net when searching for `java synchronzation on strings`.