当前位置:编程学习 > wap >>

自定义通知事件的跨线程问题

想用自定义事件通知调用者如进度变化等信息,为此定义了一个System.Threading.Timer,定时调用自定义事件,调用者关联的事件处理函数修改UI控件以显示进度变化。现遇到一个问题:貌似System.Threading.Timer内部用的是线程池技术,事件产生时,调用者修改UI的代码会报跨线程错,用Invoke则会有严重的延时问题,甚至到整个调用完成后进度才开始在UI中实际反映出来。

说明一下,调用者本身已经是独立于UI线程的了(唯其如此,才会涉及异步进度通知的问题)。

不知说清楚没有,代码有点儿乱,如需要、须整理后方能拿的出手。 --------------------编程问答-------------------- .net中的跨线程确实不好用,为了保证线程的安全性,MS默认情况下不允许线程互访,使用Invoke也不“实时”,楼主不如考滤使用windows自定义消息来处理,就是调用API有点烦! --------------------编程问答-------------------- 不到万不得已不用消息技术,还请另谋它策。 --------------------编程问答-------------------- 如果不是WP下的开发,那就使用MFC实现吧!
补充:移动开发 ,  Windows Phone
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,