class_docstr: Hyperparams repository that saves hyperparams, and scores for every AutoML trial.
  Cache folder can be changed to do different round numbers.
  
  For more information, read this `article by Martin Fowler on DDD Aggregates <https://martinfowler.com/bliki/DDD_Aggregate.html>`_.
  
  .. seealso::
      :class:`AutoML`,
      :class:`Trainer`,
class_docstr_tok: ["Hyperparams","repository","that","saves","hyperparams",",","and","scores","for","every","AutoML","trial",".","Cache","folder","can","be","changed","to","do","different","round","numbers",".","For","more","information",",","read","this","`","article","by","Martin","Fowler","on","DDD","Aggregates","<","https",":","\/\/martinfowler.com\/bliki\/DDD_Aggregate.html",">","`","_",".","..","seealso",":",":",":","class",":","`","AutoML","`",",",":","class",":","`","Trainer","`",","]
code: def with_lock(self) -> "SynchronizedHyperparamsRepositoryWrapper":
      return SynchronizedHyperparamsRepositoryWrapper(self)
  
imports: import copy
  import multiprocessing
  import os
  from abc import abstractmethod
  from neuraxle.base import BaseService, MetaServiceMixin
  from neuraxle.logging.logging import NeuraxleLogger
  from neuraxle.logging.warnings import RaiseDeprecatedClass
  from neuraxle.metaopt.data.vanilla import BaseDataclass, RootDataclass, ScopedLocation, ScopedLocationAttr, SubDataclassT, dataclass_2_subloc_attr
label_desc: Use image node_id 6 for calling the HyperparamsRepository obj's underlying member method code with example usage: obj.with_lock() and returns: SynchronizedHyperparamsRepositoryWrapper