Hi Roger,

On 16/05/2019 6:32 am, Roger Riggs wrote:
Please review a change in the synchronization during the creation of an ObjectInputStream. Currently, a synchronized block is used to initialize the streams filter is read the global serial filter which becomes a bottleneck under high concurrency.  Since the value only ever changes from null to non-null once, the synchronization is not needed.  Changing the field to volatile and removing
the synchronization on read should alleviate the contention.

That looks fine to me. Even if the value could change repeatedly you don't need the sync on the read, as long as its volatile.

Cheers,
David
-----

Issue:
   https://bugs.openjdk.java.net/browse/JDK-8220166

Webrev:
   http://cr.openjdk.java.net/~rriggs/webrev-fix-8220166/index.html

Thanks, Roger

Reply via email to