Release Note: The Default Thread Pool Used for Asynchronous Channel Operations Now Uses Innocuous Threads

XMLWordPrintable

    • Type: Sub-task
    • Resolution: Delivered
    • Priority: P4
    • 25
    • Affects Version/s: 25
    • Component/s: core-libs
    • generic
    • generic

      The default thread pool for the system-wide default `AsynchronousChannelGroup` is changed to create threads that do not inherit anything from threads that initiate asynchronous I/O operations. Historically, threads in the default thread pool inherited the Thread Context ClassLoader (TCCL) and inheritable-`ThreadLocal`s from the first thread to initiate an asynchronous I/O operation. The change in this release avoids potential memory leak and retention issues that arose when a TCCL or a thread local kept a large graph of objects reachable.

            Assignee:
            Brian Burkhalter
            Reporter:
            Brian Burkhalter
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated:
              Resolved: