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函数,向服务器发送数据包。

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

相关推荐
Shell运维手记3 分钟前
Linux 常用基础命令学习笔记
linux·运维·笔记·学习·算法·github
动词ing1 小时前
【学习笔记】C语言(数组指针与指针数组+字符数组+函数+参数传递+字符串作为形参+递归函数+指针函数+回调函数+结构体嵌套+内存动态分配函数)
c语言·笔记·学习
小O的算法实验室3 小时前
IEEE TII,学习为多目标深度学习生成偏好
人工智能·深度学习·学习
吃好睡好便好4 小时前
说说高温对情绪的影响
学习·生活·情绪·高温
for_ever_love__4 小时前
python基础语法学习: 文件操作
python·学习
m4Rk_5 小时前
【论文阅读】Agent 记忆机制(38):AMA——用多智能体协作动态选择记忆粒度
论文阅读·人工智能·学习
zjnlswd6 小时前
c# 刘铁猛 学习笔记
笔记·学习
LuminousCPP6 小时前
单链表专题(三)-刷题复盘篇:从快慢指针到环形链表 II 数学推导
数据结构·经验分享·笔记·学习·算法·链表
你想知道什么?7 小时前
朴素贝叶斯算法-学习笔记
笔记·学习·算法
天吾cc7 小时前
JSON 与 cJSON 学习笔记
笔记·学习·json