NWUDPSession isViable=true vs status=ready

Hey!

before we start sending data to NWUDPSession in our Network Extension, we're currently checking for a joined condition of:

(status == .ready && isViable)

and sometimes we see that the session gets stuck with status being ready, but isViable being false.

Is it enough to just rely on the NWUDPSession.status == ready for sending data via the session?