You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This case might become a little awkward in our API (I'm also guessing that this isn't the most common communication pattern?). I think the correct way to do this, as an application, would be to send an empty Message that has the Final property set. However, data doesn't seem to be optional in our Messages... does this need changing?
IIRC we talked a lot about half-close, and how we don't want to enshrine what is essentially a TCP-specific design artifact (which has been taken to be an actual interface surface in the decades since 1983) into a first-order concept in the interface. i.e. "you can't do half-close" is a feature.
That said, your proposed contortion is correct. :) I always understood "data as non-optional" to mean "you can always send zero octets", so I'm not sure we need to correct that, but that's a weakly-held opinion.
I think that explicitly stating that this is possible for an application creates the assumption that it must be possible, which may limit the flexibility of the system. I.e., a programmer might take it to think, I can send any metadata in the messageContext across by just sending an empty Message, but this might not always work, e.g. when the underlying Connection is really just a stream.
So... it's doable but I think we shouldn't write anything about it. Other thoughts?
From the INT review by Erik Kline:
S4.1.7
a message (e.g. accept() or connect() followed by some flavor
of shutdown())?
Without having read the other documents yet I'm just wondering
how this might be implemented.
The text was updated successfully, but these errors were encountered: