code: def testEagerMemoryUsageWithReset(self):
      if memory_profiler is None:
          self.skipTest("memory_profiler required to run this test")
  
      dataset = dataset_ops.Dataset.range(10)
      multi_device_iterator = (
          multi_device_iterator_ops.MultiDeviceIterator(
              dataset, [self._devices[1], self._devices[2]]
          )
      )
  
      def f():
          self.evaluate(multi_device_iterator.get_next())
          multi_device_iterator._eager_reset()
  
      self.assertMemoryNotIncreasing(
          f, num_iters=50, max_increase_mb=250
      )
  
imports: import gc
  import time
  import weakref
  from absl.testing import parameterized
  from tensorflow.python.data.kernel_tests import test_base
  from tensorflow.python.data.ops import dataset_ops
  from tensorflow.python.data.ops import multi_device_iterator_ops
  from tensorflow.python.framework import combinations
  from tensorflow.python.framework import dtypes
  from tensorflow.python.platform import test
  from tensorflow.python.platform import tf_logging
  from tensorflow.python.types import internal
label_desc: Use image node_id 4 for calling the MemoryCleanupTest obj's underlying member method code with example usage: obj.testEagerMemoryUsageWithReset() without return types