要协议,你直接比较会出问题的
比如,每一帧都以0x12,0x34,0x56,0x78,4字节开头
然后+一个字节的数据类型或者该帧是给谁的,比如给线程1,就0x01,给0x02
然后+二个字节的数据长度,比如你是发300个字节则为0x01,0x2c
然后是数据,比如你那300个字节
最后是校验,把前面所有的用32位(4字节)或者16位(二字节)加起来不足的补零
如上面(按16位加)就是SUM=0x1234+0x5678+0x0101+0x2c..+....
所以最终就是
帧头4字节 0x12 0x34 0x56 0x78
帧所属进程1字节 0x03
帧内数据长度2字节 0x01 0x2c
帧数据....
校验
|