类 ProcedureExecutor<Env>


  • public class ProcedureExecutor<Env>
    extends java.lang.Object
    • 方法详细资料

      • init

        public void init​(int numThreads)
      • getRootProcId

        public long getRootProcId​(Procedure proc)
      • startWorkers

        public void startWorkers()
      • startCompletedCleaner

        public void startCompletedCleaner​(long cleanTimeInterval,
                                          long cleanEvictTTL)
      • removeInternalProcedure

        public boolean removeInternalProcedure​(InternalProcedure internalProcedure)
      • getWorkerThreadCount

        public int getWorkerThreadCount()
      • isRunning

        public boolean isRunning()
      • stop

        public void stop()
      • join

        public void join()
      • isStarted

        public boolean isStarted​(long procId)
      • isFinished

        public boolean isFinished​(long procId)
      • getProcedures

        public java.util.concurrent.ConcurrentHashMap<java.lang.Long,​Procedure> getProcedures()
      • submitProcedure

        public long submitProcedure​(Procedure<Env> procedure)
        Submit a new root-procedure to the executor, called by client.
        参数:
        procedure - root procedure
        返回:
        procedure id
      • abort

        public boolean abort​(long procId,
                             boolean force)
        Abort a specified procedure.
        参数:
        procId - procedure id
        force - whether abort the running procdure.
        返回:
        true if the procedure exists and has received the abort.
      • abort

        public boolean abort​(long procId)
      • getResult

        public Procedure<Env> getResult​(long procId)
      • getResultOrProcedure

        public Procedure<Env> getResultOrProcedure​(long procId)
        Query a procedure result
        参数:
        procId - procedure id
        返回:
        procedure or retainer
      • getEnvironment

        public Env getEnvironment()