@Override
    public boolean isProcessActive(final int processId) {
      try {
        return kill(processId, 0) == 0;
      } catch (LastErrorException le) {
        if (le.getErrorCode() == EPERM) {
          // Process exists; it probably belongs to another user (bug 27698).
          return true;
        }
      }
      return false;
    }
holds a reference of {@link SignalHandler} installed in {@link #daemonize} for SIGHUP to
avoid it being GCed. Assumes that the NativeCalls instance itself is a singleton and never
GCed.
geode-core/src/main/java/org/apache/geode/internal/shared/NativeCallsJNAImpl.java