我有一个文件传输应用程序(大文件),我想让它可以扩展。我使用异步回调来读取 16Kb 的消息。每当我收到一条消息时,我都会将它发送到一个将“解密”并处理它的类。使用的格式很简单:(int)Command->(int)MsgLen->(String)Msg。
这只是一个例子。我遇到的问题是,如果我想进行多次读取,处理这个问题的最佳方法是什么?如果 1 次读取中有多个命令会发生什么?例如,我快结束了,我只有 2 个字节的命令,而不是完整的 4 个?
我想到了一个队列,但是提取字节并转换它们很痛苦。有更好的选择吗?