unity使用lua处理byte数组

更新时间:2023-07-19 05:33:50 阅读: 评论:0

广东省失业保险条例
unity使⽤lua处理byte数组
史记世家前⾔
入党个人自传
⼀般untiy中⽹络处理都是使⽤C#,但是如果使⽤lua做热更开发的话,很多逻辑需要在lua端写,⽐如⽹络协议,会使⽤lua-
protobuf,lua-pbc等。那么⽹络的字节拼接就需要在lua端拼接好,再回传给C#,
⽬前拼接字节有两种⽅案:
1.使⽤C#的MemoryBuffer+BinaryReader和BinaryWriter进⾏拼接
2.使⽤lua的string.pack和string.unpack进⾏拼接
如果使⽤C#进⾏拼接,那么最好是在C#端直接做,如果在lua端做,就需要lua调⽤C#的代码。但是⽹络数据是很频繁的,如果频繁的这么操作,就可能带来性能问题,产⽣⼤量gc
荫士安
语法快递服务标准
下⾯就介绍下如何使⽤lua⾃带的pack机制处理字节流byte[]
语法:
string.pack (fmt, v1, v2, ···)
返回⼀个打包了(即以⼆进制形式序列化) v1, v2 等值的⼆进制字符串。字符串 fmt 为打包格式(参见 §6.4.2)。
string.unpack (fmt, s [, pos])
浙大软件学院>跳的词语返回以格式 fmt (参见 §6.4.2)打包在字符串 s (参见 string.pack)中的值。选项 pos(默认为 1 )标记了从 s 中哪⾥开始读起。读完所有的值后,函数返回 s 中第⼀个未读字节的位置。
降调节<

本文发布于:2023-07-19 05:33:50,感谢您对本站的认可!

本文链接:https://www.wtabcd.cn/fanwen/fan/89/1087352.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:字节   字符串   进制   返回
相关文章
留言与评论(共有 0 条评论)
   
验证码:
推荐文章
排行榜
Copyright ©2019-2022 Comsenz Inc.Powered by © 专利检索| 网站地图