unity学习(24)——客户端与服务器合力完成注册功能(6)整体逻辑总结——典中典

回顾一下注册过程的整体逻辑:一共分为 步。之后的所有网络操作其实都大同小异。

客户端上:

1.(框架)canvas对象上挂着NetWorkScript,利用socket建立网络连接的机制,利用BeginReceive和ReceiveCallBack,不断循环接受来自服务器的数据包

2.(具体)sendMessage函数的作用是向服务器单次发送数据包,目前是在点击"登录按钮"和"注册按钮"时分别使用。

3.(框架)canvas对象上挂还着MessageManager,利用Update函数的特殊机制,不断循环分类处理客户端内部消息( 存放在一个list上,产生内部消息**)**。

技巧:vs可以通过"查找所有引用"功能,来快速把握项目中函数所起到的作用。

4.(具体)内部消息存放在一个list上,产生内部消息,通过c#自带的Add函数,不断增加内部消息

5.(衔接)readMessage函数,把数据包转换成内部消息,数据包和内部消息的结构是一样的。

服务器上:

6.main中start设置打开的端口号->ServerStart.start->AcceptCallBack,循环进行监听,可以同时与多个用户建立连接(通过AcceptCallBack)。

7.每个用户在建立连接后将创建 一个特定的Session (自定义)对象 ,Session对象通过AcceptCallBack,循环从客户端读取信息,并存储在对应的Session的List里面

8.通过Session中自定义的write函数,向服务器发送数据包。

到此为止服务器和客户端的 逻辑 算是有一个整体的架构了。

相关推荐
莫非王土也非王臣2 小时前
深度学习之对比学习
人工智能·深度学习·学习
Wzx1980122 小时前
doker深学习
学习·docker
InterestOriented3 小时前
破解银发学习痛点 兴趣岛 “普惠 + 品质” 模式打造积极老龄化范本
大数据·人工智能·学习
HyperAI超神经4 小时前
IQuest-Coder-V1:基于代码流训练的编程逻辑增强模型;Human Face Emotions:基于多标注维度的人脸情绪识别数据集
人工智能·深度学习·学习·机器学习·ai编程
testpassportcn4 小时前
UiPath-ADPV1 認證介紹|Automation Developer Professional v1
网络·学习·改行学it
生擒小朵拉4 小时前
ROS1学习笔记(二)
笔记·学习
Gorgous—l6 小时前
数据结构算法学习:LeetCode热题100-动态规划篇(下)(单词拆分、最长递增子序列、乘积最大子数组、分割等和子集、最长有效括号)
数据结构·学习·算法
窗边鸟8 小时前
小白日记之java方法(java复习)
java·学习
魔芋红茶8 小时前
Spring Security 学习笔记 4:用户/密码认证
笔记·学习·spring
爱宁~9 小时前
UnityShader学习笔记[二百九十九]UGUI中的Mask遮罩半透明Shader
笔记·学习