code: def test_istarmap(self):
      tuples = list(zip(range(10), range(9, -1, -1)))
      result = list(itertools.starmap(mul, tuples))
      it = self.pool.istarmap(mul, tuples)
      self.assertEqual(list(it), result)
      iterator = zip(range(10), range(9, -1, -1))
      it = self.pool.istarmap(mul, iterator)
      self.assertEqual(list(it), result)
  
      tuples = list(zip(range(10), range(9, -1, -1)))
      it = self.pool.istarmap(mul, tuples)
      for i, j in tuples:
          self.assertEqual(next(it), i * j)
      self.assertRaises(StopIteration, next, it)
  
      tuples = list(zip(range(100), range(99, -1, -1)))
      it = self.pool.istarmap(mul, tuples, chunksize=20)
      for i, j in tuples:
          self.assertEqual(next(it), i * j)
      self.assertRaises(StopIteration, next, it)
  
imports: from mpi4py import MPI
  import mpi4py.util.pool
  import concurrent.futures
  import itertools
  import functools
  import warnings
  import unittest
  import time
  import sys
  import os
label_desc: Use image node_id 9 for calling the BaseTestPool obj's underlying member method code with example usage: obj.test_istarmap() without return types