org.gjt.sp.util

## Class TaskManager

- java.lang.Object
- - org.gjt.sp.util.TaskManager

    public class TaskManager
    extends java.lang.Object

The TaskManager manage Tasks in the Threadpool, it knows all of them, and sends events to TaskListeners.

### Nested Class Summary

Nested Classes
`static interface` `TaskManager.TaskVisitor`

### Field Summary

Fields
`static TaskManager` `instance` A singleton instance of TaskManager

### Method Summary

Methods
`void` `addTaskListener(TaskListener listener)`
`void` `cancelTasksByClass(java.lang.Class<? extends Task> clazz)` cancel a task by its class
`int` `countIoTasks()` Return the number of IO tasks in queue.
`int` `countTasks()` Return the number of tasks in queue.
`void` `removeTaskListener(TaskListener listener)`
`void` `visit(TaskManager.TaskVisitor visitor)` Visit all tasks.
`void` `waitForIoTasks()` Wait for all IO tasks to finish

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Field Detail

#### instance

    public static final TaskManager instance

A singleton instance of TaskManager

### Method Detail

#### countTasks

    public int countTasks()

Return the number of tasks in queue.

Returns:
  the number of tasks in queue
Since:
  jEdit 4.5pre1

#### countIoTasks

    public int countIoTasks()

Return the number of IO tasks in queue.

Returns:
  the number of IO tasks in queue
Since:
  jEdit 5.1pre1

#### addTaskListener

    public void addTaskListener(TaskListener listener)

#### removeTaskListener

    public void removeTaskListener(TaskListener listener)

#### visit

    public void visit(TaskManager.TaskVisitor visitor)

Visit all tasks. While doing this the task list is locked

Parameters:
  `visitor` - the visitor

#### waitForIoTasks

    public void waitForIoTasks()

Wait for all IO tasks to finish

Since:
  jEdit 5.1pre1

#### cancelTasksByClass

    public void cancelTasksByClass(java.lang.Class<? extends Task> clazz)

cancel a task by its class

Since:
  jEdit 5.1pre1