欢迎加入Unity业内qq交流群:956187480
qq扫描二维码加群
项目结束了就需要有个总结了。
1.消息事件接收
public void OnRecveHandler(object sender, RecvEvent e)
{
_dispatcher.AddData(e.Message, e.BytesTransferred);
}
public void AddData(byte[] data, int actualSize)
{
SocketData socketdata = new SocketData();
socketdata.data = data;
socketdata.actualSize = actualSize;
mQueue.Enqueue(socketdata);
}
2.实时监测消息队列
public void Update()
{
_dispatcher.IncomingData();
}
public void IncomingData()
{
while (this.mQueue.Count > 0)
{
SocketData socketdata = (SocketData)this.mQueue.Dequeue();
this.mIProcessData.IncomingData(socketdata.data, socketdata.actualSize);
}
}
3.处理消息队列的消息
//拿到服务器的消息后处理一下
public void IncomingData(byte[] data, int actualSize)
{
if (actualSize >= SocketClient.BUFFER_SIZE)
{
Debug.Log("当前大小 actualSize:" + actualSize);
throw new Exception("Buffer Overflow!");
}
actualSize = data[3]
关注
打赏
热门博文
- 【Unity实战100例】Unity读取加载Gif动图的两种方式
- 【Unity实战100例】从Unity对象池里获取各种月饼
- 【小游戏】2D游戏炸弹超人BombSuperman(无限关卡模式)
- 【Unity实战100例】Unity幸运大转盘之概率可控
- 【Unity实战100例】文件压缩Zip和ZIP文件的解压
- 【Unity实战100例】Unity万能答题系统之单选多选判断题全部通用
- 【工具篇】SQLite本地数据库在Unity3D的应用
- 【全民Python】Python环境配置和Pychram的安装使用
- 【Unity编辑器扩展】Unity发布资源到商店流程Unity Asset Store Publish
- 【Unity实战100例】Unity2D人物控制器,控制2D玩家移动跳跃,四方向和水平方向