code: def test_concurrent_put(ray_start_regular_shared):
      q = Queue(1)
      q.put(1)
      future = async_put.remote(q, 2)
  
      with pytest.raises(Full):
          q.put_nowait(3)
  
      with pytest.raises(GetTimeoutError):
          ray.get(future, timeout=0.1)  # task not canceled on timeout.
  
      assert q.get() == 1
      assert q.get() == 2
  
file_path: ray/python/ray/tests/test_queue.py
imports: import pytest
  import time
  import ray
  from ray.exceptions import GetTimeoutError, RayActorError
  from ray.util.queue import Queue, Empty, Full
  from ray._private.test_utils import wait_for_condition, BatchQueue
label_desc: Use image node_id 7 for calling a global function with example usage: test_concurrent_put(ray_start_regular_shared) without return types