Code example for FutureTask

1
        this.executor = executor;
    } 
 
 
    public FutureTask<Void> future() {
        future = new FutureTask<Void>( newTask() );
        return future;
    } 
 
    public SafeAsyncTask<ResultT> executor( Executor executor ) {
        this.executor = executor;
        return this;
    } 
 
    public Executor executor() {
        return executor;
    } 
 
    public SafeAsyncTask<ResultT> handler( Handler handler ) {
        this.handler = handler;
        return this;
    } 
 
    public Handler handler() {
        return handler;
    } 
 
    public void execute() { 
        execute(Thread.currentThread().getStackTrace());
    } 
 
    protected void execute( StackTraceElement[] launchLocation ) {
        this.launchLocation = launchLocation;
        executor.execute( future() );
    } 
 
    public boolean cancel( boolean mayInterruptIfRunning ) {
        if( future==null )
            throw new UnsupportedOperationException("You cannot cancel this task before calling future()");