src/main/java/org/michailov/async/AsyncAgent.java
public CompletableFuture<Void> startApplyLoopAsync() {
        ensureMode(WhenReadyMode.LOOP);
        CompletableFuture<Void> future = WhenReady.startApplyLoopAsync(READY, DONE, ACTION, this, _asyncOptions);

        String logMessage = String.format("future=%1$d , class=%2$s , event=CREATE", future.hashCode(), getClass().getName());
        Logger.getLogger().info(logMessage);
        
        return future;
    }
/**
     * Starts a new {@link WhenReady#startApplyLoopAsync} operation.
     * 
     * @return      A future that will get completed with the result returned from the last execution of {@link #action}.
     */


@return      A future that will get completed with the result returned from the last execution of  #action.
@return A future that will get completed with the result returned from the last execution of #action .
public CompletableFuture<Void> startApplyLoopAsync() {
        ensureMode(WhenReadyMode.LOOP);
        CompletableFuture<Void> future = WhenReady.startApplyLoopAsync(READY, DONE, ACTION, this, _asyncOptions);
        String logMessage = String.format("future=%1$d , class=%2$s , event=CREATE", future.hashCode(), getClass().getName());
        Logger.getLogger().info(logMessage);
        return future;
    }
public CompletableFuture < Void > startApplyLoopAsync ( ) { ensureMode ( WhenReadyMode . LOOP ) ; CompletableFuture < Void > future = WhenReady . startApplyLoopAsync ( READY , DONE , ACTION , this , _asyncOptions ) ; String logMessage = String . format ( "future=%1$d , class=%2$s , event=CREATE" , future . hashCode ( ) , getClass ( ) . getName ( ) ) ; Logger . getLogger ( ) . info ( logMessage ) ; return future ; }
Starts a new {@link WhenReady#startApplyLoopAsync} operation.
Starts a new { @link WhenReady#startApplyLoopAsync } operation .