游戏大厅升级日记 第3天

把逻辑升级为一个用户可以同时进入多个大厅(原先是只能进一个大厅),但还是只能打一个游戏。

这迫使我不得不大幅度修改代码,尤其是实体。

迄今为止,已经改好,但是有很多小bug需要解决。

为此在Server端显示消息,包括

收协议,发协议的时间点,以及发送/接收的对象,几个关键内存对象的变化。

在Client端启动的同时打开控制台程序,从而也输出上述这些信息。

 

迄今为止,登录已经稳定,通信层已经稳定。

非法掉线检测已经稳定,但是在Client端的处理还需要完善。

还需要写story。

 

又解决了两个bug:

1)leave hall 不正常,是因为我的userHallList中HallId都为0。

2)抛出异常“在创建窗口句柄之前,不能在控件上调用Invoke 或BeginInvoke”,这个问题困扰了我好久,刚刚找到解决方案:在this.Invoke()之前加一段等待代码:

while (!this.IsHandleCreated)
{
    ;
}

posted @ 2009-01-27 03:00  包建强  Views(714)  Comments(1Edit  收藏  举报