final boolean claim(){
  Executor e=executor;
  if (compareAndSetForkJoinTaskTag((short)0,(short)1)) {
    if (e == null)     return true;
    executor=null;
    e.execute(this);
  }
  return false;
}

final boolean claim ( ) { Executor e = executor ; if ( compareAndSetForkJoinTaskTag ( ( short ) 0 , ( short ) 1 ) ) { if ( e == null ) return true ; executor = null ; e . execute ( this ) ; } return false ; }
returns true if action can be run . call only when known to be triggerable . uses fj tag bit to ensure that only one thread claims ownership . if async , starts as task - - a later call to tryfire will run action .
