code: def run(self):
      input_data = self._worker_fun(self._worker_id, self._batch_size)
  
      self._batch_feeder.put(input_data, self._coordinator)
  
imports: import queue
  from itertools import chain
  import logging
  import threading
  import numpy
  import time
  from caffe2.python import workspace, core, scope, utils
  from caffe2.proto import caffe2_pb2
  from caffe2.python.parallel_workers import Metrics, State, WorkerCoordinator, GlobalWorkerCoordinator, Worker, run_worker
label_desc: Use image node_id 2 for calling the DataWorker obj's underlying member method code with example usage: obj.run() without return types