code: def test_hang_global_shutdown_lock(self):
      # bpo-45021: _global_shutdown_lock should be reinitialized in the child
      # process, otherwise it will never exit
      def submit(pool):
          pool.submit(submit, pool)
  
      with futures.ThreadPoolExecutor(1) as pool:
          pool.submit(submit, pool)
  
          for _ in range(50):
              with futures.ProcessPoolExecutor(
                  1, mp_context=mp.get_context("fork")
              ) as workers:
                  workers.submit(tuple)
  
imports: import contextlib
  import multiprocessing
  import multiprocessing.process
  import multiprocessing.util
  import os
  import threading
  import unittest
  from concurrent import futures
  from test import support
  from .executor import ExecutorTest, mul
  from .util import BaseTestCase, ThreadPoolMixin, setup_module
label_desc: Use image node_id 5 for calling the ThreadPoolExecutorTest obj's underlying member method code with example usage: obj.test_hang_global_shutdown_lock() without return types