code: def test_overload_operators_in_subthread():
      """Test we can create a model in a child thread with overloaded operators."""
      # Worker1 will start and run, while worker 2 sleeps after Model.define_operators.
      # Without thread-safety, worker2 will find that its operator definitions
      # have been removed, causing an error.
      worker1 = threading.Thread(target=_overload_plus, args=("+", 0))
      worker2 = threading.Thread(target=_overload_plus, args=("*", 1))
      worker2.start()
      worker1.start()
      worker1.join()
      worker2.join()
  
      worker1 = threading.Thread(target=_overload_plus, args=("+", 1))
      worker2 = threading.Thread(target=_overload_plus, args=("*", 0))
      worker2.start()
      worker1.start()
      worker1.join()
      worker2.join()
  
imports: import threading
  import time
  from collections import Counter
  import numpy
  import pytest
  from thinc.api import Adam, CupyOps, Dropout, Linear, Model, Relu, Shim, Softmax, chain, change_attr_values, concatenate, set_dropout_rate, use_ops, with_debug, wrap_model_recursive
  from thinc.compat import has_cupy_gpu
  from ..util import make_tempdir
label_desc: Use image node_id 20 for calling a global function with example usage: test_overload_operators_in_subthread() without return types