code: def test_call_iter_on_dataloader_multiple_times_inmem(
      synthetic_dataset, reader_factory
  ):
      with InMemBatchedDataLoader(
          reader_factory(
              synthetic_dataset.url, schema_fields=[TestSchema.id]
          ),
          batch_size=2,
          rows_capacity=100,
          shuffle=False,
      ) as loader:
          match_str = (
              "InMemBatchedDataLoader couldn't be used multiple times"
          )
          with pytest.raises(RuntimeError, match=match_str):
              iter1 = iter(loader)
              next(iter1)
              iter2 = iter(loader)
              next(iter2)
  
imports: from decimal import Decimal
  from packaging import version
  import numpy
  import pyarrow
  import pytest
  import torch
  from petastorm import make_reader, TransformSpec, make_batch_reader
  from petastorm.pytorch import _sanitize_pytorch_types, DataLoader, BatchedDataLoader, decimal_friendly_collate, InMemBatchedDataLoader, _load_rows_into_mem
  from petastorm.tests.test_common import TestSchema
label_desc: Use image node_id 17 for calling a global function with example usage: test_call_iter_on_dataloader_multiple_times_inmem(synthetic_dataset, reader_factory) without return types