code: def send(signal):
      
      if hasattr(ray.worker.global_worker, "actor_creation_task_id"):
          source_key = ray.worker.global_worker.actor_id.hex()
      else:
          # No actors; this function must have been called from a task
          source_key = ray.worker.global_worker.current_task_id.hex()
  
      encoded_signal = ray.utils.binary_to_hex(cloudpickle.dumps(signal))
      ray.worker.global_worker.redis_client.execute_command(
          "XADD " + source_key + " * signal " + encoded_signal)
docs: Send signal.
  
      The signal has a unique identifier that is computed from (1) the id
      of the actor or task sending this signal (i.e., the actor or task calling
      this function), and (2) an index that is incremented every time this
      source sends a signal. This index starts from 1.
  
      Args:
          signal: Signal to be sent.