日期:2014-05-17  浏览次数:20721 次

关于UI展示异步数据的问题
scene1,scene2,scene3... 等多个类
程序会在不同的时候切换到不同的 scene 类上.

这类现象 可以直接联想到 winform 程序的界面间切换


我的问题来了:

如果有另外一个线程不停的在获得数据(好比异步socket)
这个时候 socket获得的数据 如何 反映到界面上呢?

比如我单击一个button 然后 网络会异步传回数据 "接到指令,处理成功"
而我则是想把上面那句话展示出来. 

但是网络模块用什么方式 获得 scene 句柄呢, 并且,他如何知道是那个 scene 正在运行呢?

有很多方法我能实现. 比如静态啊, 状态控制啊之类的. 

但是, 有没有什么更好的方式呢? 我要优雅点的.

我想过用委托. 但后来想了想也不行. 因为网络模块根本拿不到委托句柄. 



在之前我做server端开发的时候这些问题是不需要考虑的. 因为我的 任何 scene都是常驻内存的单例. 
如果从网络上获得了消息. 直接从单例里拿需要执行的方法句柄.

------解决方案--------------------
不太明白...你用socket 接收了数据,那总得用个 byte存起来吧..那么这个byte就得实例吧.调用这个实例不就得了么?
------解决方案--------------------
哎... 来几个人领分了
------解决方案--------------------
用Invoke试一下