Contents

nw_connection_receive_message(_:_:)

Schedules a single receive completion handler for a complete message, as opposed to a range of bytes.

Declaration

func nw_connection_receive_message(_ connection: nw_connection_t, _ completion: @escaping  nw_connection_receive_completion_t)

Parameters

  • connection:

    A network connection instance.

  • completion:

    A receive completion is invoked exactly once for a call to receive. The completion indicates that the requested content has been received (in which case the content is delivered), or else an error has occurred.

    The completion delivers the received content, which may be nil if the message is complete or an error occurred, the message context, a flag indicating if the message is complete, and any associated error.

Discussion

Receiving messages allows you to deal with complete datagrams or application-layer messages without needing to reconstruct a stream.

If you are using UDP, receiving a message will deliver a single datagram.

If you request to receive a message on a protocol that is otherwise an unbounded bytestream, like TCP or TLS, note that this will not deliver any data until the stream is closed by the peer.

In order to use messages on top of a bytestream protocol, add WebSocket Options or custom Framer Protocol Options to your protocol stack.

See Also

Functions