<div dir="ltr"><div dir="ltr">Em seg., 15 de jan. de 2024 às 09:57, 刘希晨 <<a href="mailto:benrush0705@gmail.com">benrush0705@gmail.com</a>> escreveu:<br></div><div class="gmail_quote"><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div>I think it's a really common behaviour in network programming, like ByteBuffer, recording the current message offset as its instance variable, so the caller could use get() method multiple times without worrying about its current offset, currently I wrapped MemorySegment in a ByteBuffer-like structure for content reading and writing, but with MemorySegment.getString() and MemorySegment.setString(), the afterwards offset can't be obtained.</div></div></blockquote></div><div><br></div><div>In my experience, network protocols will encode variable length data with a length prefix, so that you already know how many bytes are there before decoding. The alternative, to encode the variable length data with a sentinel value, is uncommon.<br></div><div><br></div><span class="gmail_signature_prefix">-- </span><br><div dir="ltr" class="gmail_signature"><div dir="ltr"><div>Pedro Lamarão</div></div></div></div>