code: def mors_batch(self, key, batch_size):
          
          with self._mor_lock:
              mors_dict = self._mor.get(key)
              if mors_dict is None:
                  yield {}
  
              mor_names = list(mors_dict)
              mor_names.sort()
              total = len(mor_names)
              for idx in range(0, total, batch_size):
                  names_chunk = mor_names[idx : min(idx + batch_size, total)]
                  yield {name: mors_dict[name] for name in names_chunk}
docs: Generator returning as many dictionaries containing `batch_size` Mor
          objects as needed to iterate all the content of the cache. This has
          to be iterated twice, like:
  
              for batch in cache.mors_batch('key', 100):
                  for name, mor in batch:
                      # use the Mor object here