可以称为时域,简单理解其实就是 '会话时间'
因为客户端程序本身就已经有很多一部分在你的电脑里了,比如说LOL的召唤师峡谷的地图文件
你在看到你人物在动的同时,别人同时也在动,这个过程是怎么实现的呢?
你在动的时候,你人物所在的地图位置其实就仅仅是一个坐标,比如说(21,24),而你要上传发送给给
服务器的代码就仅仅是一个移动操作指令的代码,比如001和地图参数(坐标),你应该知道这个数占用
的宽带大小,比如你下载的速度是400KB/S,上传速度100KB/S,100KB/S就是每秒能上传100K(100
千,K=Kilo千)字节的数据,你一个坐标位置才占了4B=4个字节而已,所以你的宽带发送一个坐标代码是
非常足够的,而且服务器处理几字节的数据的过程非常快,比如在你的电脑上计算5+5瞬间就出结果了,
这也就解释了为什么你点击移动的同时你就会移动到对应的位置,因为服务器收到你位置的时间间隔
非常短,服务器处理完了之后就把处理的结果(这个结果也就几个字节)返回给你,让你出现在对应的坐
标,不过实际的程序中,地图坐标的精度可能更高,比如(21.095,24.856)我只是举个例子而已,但是
当你网络断开连接的时候,你的地图位置和移动操作指令发送不到服务器,所以这个时候你就看到你的人物是动不了的
别人也是一样的,地图的位置仅仅是一个坐标代码,非常小,所以服务器处理就很快,结果发到你的电脑里,客户端根据这个结果调用相应的地图位置,
至于服务器,一般大型的网络服务器,带宽一般都要达到好几十G,甚至100G,家用宽带一般才4M
100G=100*1024M=102400M 你想想 102400M的宽带发送和接受一个地图代码是不是很快呢,而
且服务器的处理器CPU都要达到几百甚至上千GHz的处理能力,就是每秒计算次数,处理一个操作
指令的过程时间不到0.000001秒,所以正常情况下,你不会觉得卡.
当然人多达到服务器上限,服务器处理不过来的时候,肯定也卡,一般不会有这样的情况
我们客户端的数据到达服务器 的时间 在带宽没有达到上限的情况下, 主要是由 网络数据链路层
两节点之间的距离和各个网关的处理能力决定的,因为数据在光纤中的传输速度是 c (光速c=30万公里每秒),所以你离服务器越远,延迟就高一些,而且你 要知道 数据到达服务器并不是一次性直线到达的
而是 中间被转发很多次,从一个节点到另外节点再到下一个节点,最后到达服务器的
所以这个过程会有一些延迟,一般都不超过0.1秒也就是100ms
CallPlugin.Window.Foreground(随便填,这里就是给你获得的句柄取一个代号,不过建议你用默认的Hwnd,因为大部分的命令都是用默认句柄)像你这个CallPlugin.Bkgnd.KeyDown(a, ),你这里a就是代表句柄,如果你要用a的话,你句柄的获得就应该这样CallPlugin.Window.Foreground(a),这个是按键 的,按键 的话应该是这样a=Plugin.Window.Foreground()。不过有些窗口是有 个句柄的,标题栏一个,窗口内容一个,所以建议你用//得到鼠标指向的窗口句柄Hwnd=Plugin.Window.MousePoint()来获得句柄每次获得的句柄不一样,肯定是用的抓抓获句柄,使用我说的这个,就没这个困扰了。新上路的朋友,建议多上论坛看看PS:如果您对我的答案满意,麻烦加点分~欢迎分享,转载请注明来源:夏雨云
评论列表(0条)