Uploaded image for project: 'JGroups'
  1. JGroups
  2. JGRP-2100

Timer: don't submit non-blocking tasks to the thread pool

    Details

    • Type: Feature Request
    • Status: Resolved (View Workflow)
    • Priority: Major
    • Resolution: Done
    • Affects Version/s: None
    • Fix Version/s: 4.0
    • Labels:
      None

      Description

      Currently, TimeScheduler3 has a runner thread which continually takes tasks from a DelayQueue and submits them to the thread pool.

      If a task is non-blocking, this is not necessary; instead the task can be run on the runner's thread. This will reduce the number of thread created in the thread pool.

      Investigate whether it is possible to mark tasks as blocking or non-blocking. Example: an AgeOutCache task is always non-blocking. A UNICAST3 or NAKACK2 retransmission task is (potentially) blocking if TCP is used as transport and non-blocking if for example UDP or TCP_NIO2 are used.

        Gliffy Diagrams

          Attachments

            Activity

              People

              • Assignee:
                belaban Bela Ban
                Reporter:
                belaban Bela Ban
              • Votes:
                0 Vote for this issue
                Watchers:
                2 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: