code: def reset(self):
      while len(self._runner_list) > 0:
          runner = self._runner_list.pop()
          runner.terminate()
          del runner
  
      if self._q is not None:
          del self._q
      self._q = Queue(maxsize=self._num_process)
  
      for i in range(self._num_process):
          runner = _Sampler(
              self._dataset, self._q, self._generate_batch
          )
          runner.daemon = True
          runner.start()
          self._runner_list.append(runner)
      self._start = True
  
file_path: openrec/openrec/tf1/utils/samplers/sampler.py
imports: from multiprocessing import Process, Queue
label_desc: Use image node_id 3 for calling the Sampler obj's underlying member method code with example usage: obj.reset() without return types