code: protected synchronized void prepare(String soName) throws IOException {
      // Only one thread at a time can try to recover a corrupted lib from the same source
      Object lock = getLibraryLock(soName);
      synchronized (lock) {
        // While recovering, do not allow loading the same lib from another thread
        mCorruptedLib = soName;
        prepare(SoSource.PREPARE_FLAG_FORCE_REFRESH);
      }
    }
docs: Prepare this SoSource extracting a corrupted library.