code: @Override
      public boolean getCompletionData2(long bufferAddress, int timeout, long completionPort) throws AsyncException {
          boolean gotData = false;
  
          if (aioInitialized == AIO_INITIALIZED) {
              gotData = aio_getioev2(bufferAddress, timeout, completionPort);
              if (aioInitialized == AIO_SHUTDOWN) {
                  if (TraceComponent.isAnyTracingEnabled() && tc.isDebugEnabled()) {
                      Tr.debug(tc, "getCompletionData2: Shutdown after callout");
                  }
                  gotData = false;
              }
          }
  
          return gotData;
      }
docs: /*
  @see com.ibm.io.async.IAsyncProvider#getCompletionData2(long, int, long)