static <V,A>void invokeDirect(GroupAndInvokeCount myGroupAndInvokeCount,CompletionHandler<V,? super A> handler,A attachment,V result,Throwable exc){
  myGroupAndInvokeCount.incrementInvokeCount();
  Invoker.invokeUnchecked(handler,attachment,result,exc);
}

static < V , A > void invokeDirect ( GroupAndInvokeCount myGroupAndInvokeCount , CompletionHandler < V , ? super A > handler , A attachment , V result , Throwable exc ) { myGroupAndInvokeCount . incrementInvokeCount ( ) ; Invoker . invokeUnchecked ( handler , attachment , result , exc ) ; }
invoke handler assuming thread identity already checked
