User Tools

Site Tools


java:threadpoolexecutor

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
java:threadpoolexecutor [2025/02/22 00:02] carljava:threadpoolexecutor [2025/02/22 18:40] (current) – [ScheduledThreadPoolExecutor] carl
Line 34: Line 34:
  
  
 +====== ScheduledThreadPoolExecutor ======
  
 +This class is similar to ThreadPoolExecutor, but doesn't allow you to change the task queue.  The task queue is a priority queue, sorted on the task deadline.  
  
 +=== Living without a Queue ===
 +
 +A consequence of not being able to bound the queue is that the thread count is more important:
 +
 +  * You cannot have a cached ScheduledThreadPoolExecutor.  ThreadPoolExecutor will not create a thread if submission to the task queue succeeds.  Since submission always succeeds, no threads will be created.
 +  * As mentioned in the javadocs, a core pool size of 0 is practically useless, since no threads will be alive to process the task.
 +  * If all the threads in the ScheduledThreadPoolExecutor are busy (e.g. blocking), no new tasks can be executed.  This is important for periodically running tasks, such as those submitted with ''scheduleAtFixedRate()'' and ''scheduleWithFixedDelay()'' These tasks will not be run in a timely manner.
  
java/threadpoolexecutor.1740211349.txt.gz · Last modified: by carl