private boolean isDirectoryChanged(VirtualDirectoryImpl dir, VirtualFile[] children, List<String> names) {
    var t = System.nanoTime();
    var changed = ReadAction.compute(() -> {
      VirtualFile[] currentChildren = dir.getChildren();
      return !Arrays.equals(children, currentChildren) || !names.equals(getNames(currentChildren));
    });
    myVfsTime.addAndGet(System.nanoTime() - t);
    return changed;
  }
private boolean isDirectoryChanged(VirtualDirectoryImpl dir, VirtualFile[] children, List<String> names)