• pimeys@lemmy.nauk.io
    link
    fedilink
    arrow-up
    4
    ·
    4 months ago

    It kind of fails with certain protocols. I once wrote an async MSSQL client for Rust, and some data doesn’t say its size in the headers. So this kind of forced the business logic to be async too.

    • azimir@lemmy.ml
      link
      fedilink
      arrow-up
      3
      ·
      4 months ago

      Yeah, those durn data size fields. At first you’re like “why would you do this? It’s specified in the spec, right?” Then you start consuming the data stream and go “oh, yeah need this”.

      I was doing some driver work for a real time location tracking board. The serial stream protocol was very well documented and designed. Plenty of byte length count fields, though.