class_docstr: Graph Dataloader
      
class_docstr_tok: ["Graph","Dataloader"]
docstr: __iter__
docstr_tok: ["__iter__"]
code: def __iter__(self):
      """__iter__"""
  
      def worker(filter_id):
          def func_run():
              for batch_examples in self.batch_iter(filter_id):
                  batch_dict = self.batch_fn(batch_examples)
                  yield batch_dict
  
          return func_run
  
      if self.num_workers == 1:
          r = paddle.reader.buffered(worker(0), self.buf_size)
      else:
          worker_pool = [worker(wid) for wid in range(self.num_workers)]
          worker = mp_reader.multiprocess_reader(
              worker_pool, use_pipe=True, queue_size=1000
          )
          r = paddle.reader.buffered(worker, self.buf_size)
  
      for batch in r():
          yield batch
  
imports: from __future__ import absolute_import
  from __future__ import division
  from __future__ import print_function
  from __future__ import unicode_literals
  from __future__ import absolute_import
  import os
  import sys
  import time
  import argparse
  import numpy
  import collections
  import paddle
  import paddle.fluid
  import paddle.fluid.layers
  import pgl
  from pgl.utils import mp_reader
  from pgl.utils.logger import log
label_desc: Use image node_id 6 for calling the GraphDataloader obj's underlying member method code with example usage: obj.__iter__() and returns: func_run