unity学习(18)——服务器执行流程

服务器流程如下:

1.Program.Main()->

2.ServerStart.start()->

3.socket.BeginAccept+ServerStart.AcceptCallBack接收客户端的连接,然后转向处理函数->

暂时还没有测试多开,编译一次挺麻烦的

4.socket.BeginReceive->erverStart.ReceiveCallBack->ServerStart.readMessage多次出现函数自己套自己的,网络编程没什么大惊小怪的。readMessage按照socketModel结构读取数据。这样就和之前客户端的知识

cs 复制代码
public class SocketModel
{
  public int Type;
  public int Area;
  public int Command;
  public string Message;
}

5.readMessage->LogicHandler.getInstance().process按Type分类给不同的函数再去做进一步的处理,,分别进入xxxHandler。总体看似挺麻烦的,其实已经很明朗了。process的内容如下:

cs 复制代码
public void process(Session session, SocketModel model)
{
  try
  {
    switch (model.Type)
    {
      case 0:
        LoginHandler.getInstance().process(session, model);
        break;
      case 1:
        MapHandler.getInstance().process(session, model);
        break;
      case 2:
        UserHandler.getInstance().process(session, model);
        break;
    }
  }
  catch (Exception ex)
  {
            //MyLog.form.textAdd(ex.Message);
        Console.WriteLine(ex.Message);
  }
}

到此为止服务器终于可以告一段落了。

相关推荐
旖旎夜光几秒前
Linux(11)(上)
linux·学习
猛扇赵四那边好嘴.几秒前
Flutter 框架跨平台鸿蒙开发 - 学习打卡助手应用开发教程
学习·flutter·华为·harmonyos
好奇龙猫1 分钟前
【日语学习-日语知识点小记-日本語体系構造-JLPT-N2前期阶段-第一阶段(5):单词语法】
学习
魔芋红茶2 分钟前
Spring Security 学习笔记 3:认证模型
笔记·学习·spring
狮子座明仔3 分钟前
PRL:让大模型推理不再“开盲盒“——过程奖励学习的理论与实践
人工智能·深度学习·学习·机器学习·语言模型
2301_797312264 分钟前
学习Java41天
学习
1024小神10 分钟前
css主题theme变量切换实现原理学习记录
前端·css·学习
木木木一11 分钟前
Rust学习记录--C13 Part1 闭包和迭代器
开发语言·学习·rust
木木木一12 分钟前
Rust学习记录--C13 Part2 闭包和迭代器
开发语言·学习·rust
代码游侠17 分钟前
ARM 嵌入式开发学习——从内核到外设
arm开发·笔记·嵌入式硬件·学习