commit | 3f5abd4433d3dca911ac418d899346e7dd675b7b | [log] [tgz] |
---|---|---|
author | Christopher L. Shannon (cshannon) <christopher.l.shannon@gmail.com> | Fri Jun 25 10:54:36 2021 -0400 |
committer | Christopher L. Shannon (cshannon) <christopher.l.shannon@gmail.com> | Fri Jun 25 11:37:25 2021 -0400 |
tree | 4eaba3cd51f0aa55546d173876fd8e5e712ea570 | |
parent | b94267c376837fd1c2075fe7d576d01ea098952b [diff] |
AMQ-6660 - Use a separate lock for lazy scheduler creation to prevent deadlocks Switch to using a dedicated lock to initialize the Scheduler object inside of ActiveMQConnection to prevent a deadlock scenario that occurs when using the intrinsic ActiveMQConnection lock. This is using double checked locking so this lock will only be contended with during lazy creation and then will rely on the volatile reference for future reads and when stopping/closing.