C#的多线程处理

多线程处理的目的和方式操作系统通常使用时间分片的机制来模拟多个线程并发运行,从一个线程速度极快的切换到另一个线程,给人的感觉就是同时执行。处理器在切换到下一个线程之前,执行一个特定的时间周期称为时间片。在一个给定的内核中改换执行线程的动作称为上下文切换。多线程的性能问题上下文切换是有代价的必须将CPU当前的内部状态保存到内存,还必须加载与新线程关联的状态,线程多的情况下,时间都被浪费在上下文切换时

- 阅读全文 -

客户端

客户端的结构设计原始面貌控制引用,直接操作目标对象实例玩家和其他的Entity对象接口不统一差异化的具体实现和表现代码分散,逻辑定位繁琐改变之一:拆分拆分代码,拆分逻辑代码可维护,可理解单个脚本代码量少,逻辑分类改变之二:合并拆分代码,拆分逻辑,统一合并分类不断提取接口,合并接口改变之三:整理整理代码,管理代码,优化结构,扩展逻辑(包括热更)合并分类不断提取接口,合并接口设计要点扩展大部分模块都会

- 阅读全文 -

C#的泛型

泛型的优点促进了类型安全减小了发生InvaildCastException的几率泛型成员使用值类型,不需要造成到object的装箱拆箱缓解了代码膨胀的情况性能提高:不需要从object转型,避免类型检查;不需要为值类型装箱减少了内存消耗(不需要为值类型装箱,减少堆内存消耗)可读性变强对代码编辑器友好避免在一个类型中实现同一个泛型接口的多个构造CIL类型系统不支持“元数可变”的泛型类型类型约束//

- 阅读全文 -