Class PTaskManager

java.lang.Object
de.grogra.task.Task
de.grogra.util.concurrent.PTaskManager
All Implemented Interfaces:
Serializable

public class PTaskManager extends Task implements Serializable
See Also:
  • Constructor Details

    • PTaskManager

      public PTaskManager()
    • PTaskManager

      public PTaskManager(boolean doMonitor)
  • Method Details

    • setSolverCount

      public void setSolverCount(int count)
      Sets the number of solvers (same virtual machine) to use. The default value is the number of processors which are available to the virtual machine.
      Parameters:
      count - number of solvers to use
    • add

      public void add(PTask task)
      Adds a task to be solved during solve().
      Parameters:
      task - single task to solve
    • nextPartialTask

      protected PartialTask nextPartialTask(int solverIndex)
      Description copied from class: Task
      This method returns the next partial task for this task. If all parts of the task have been solved or currently are being solved, null is returned. However, a later invocation may return a partial task if a currently active solver does not completely solve its partial task.
      Specified by:
      nextPartialTask in class Task
      Parameters:
      solverIndex - index of solver which will be used for next task
      Returns:
      next partial task, or null
    • dispose

      protected void dispose(PartialTask task)
      Description copied from class: Task
      This method is invoked when an active solver is removed or invokes Task.partialTaskDone(Solver) in order to tell this task that the partial task of the solver is no longer processed. Note that the solver may not have completely processed its partial task.
      Specified by:
      dispose in class Task
      Parameters:
      task - partial task which is no longer processed
    • done

      protected boolean done()
      Description copied from class: Task
      Returns true iff the complete task has been solved.
      Specified by:
      done in class Task
      Returns:
      has the task been solved?
    • prepareSolve

      protected void prepareSolve()
      Overrides:
      prepareSolve in class Task
    • solve

      public void solve()
      Overrides:
      solve in class Task
    • finishSolve

      protected void finishSolve()
      Overrides:
      finishSolve in class Task
    • describe

      public String describe()