首页 新闻 会员 周边

多委托事件,系统运行巨卡,怎么办?

0
悬赏园豆:5 [已解决问题] 解决于 2012-10-18 13:10

当系统创建五个委托就开始很卡,必须释放(我的释放方法就是--和stop)不知这样可以吗?为什么会卡的? 委托和线程什么关系啊?

问题补充:

DispatcherTimer

 

ShowTimer1 = new System.Windows.Threading.DispatcherTimer

();

Blink blink = newBlink

(map, PathName);

 

ShowTimer1.Tick +=

newEventHandler

(blink.goblink);

ShowTimer1.Interval =

 

 

newTimeSpan

(0, 0, 0, 0, 500);

 Blink是自己定义的一个实例,将该实例的某一个方法添加到事件中,是否正确?

我爱吃鱼的主页 我爱吃鱼 | 初学一级 | 园豆:5
提问于:2012-10-09 17:36
< >
分享
最佳答案
0

这两个有什么关系?你代码怎么写的?

顾晓北 | 专家六级 |园豆:10844 | 2012-10-10 09:46

我的问题补充了,帮我看看呗,谢了先

我爱吃鱼 | 园豆:5 (初学一级) | 2012-10-11 15:25

@我爱吃鱼: 我没用过这个东西,不过你设置的这个500毫秒太短了吧?每半秒就执行一次方法,是不是造成了一直在执行那个方法?另外你说用到了多线程,那线程是在什么地方写的?在blink.goblink里面写的?

顾晓北 | 园豆:10844 (专家六级) | 2012-10-12 11:08

我以为委托就是多线程?委托一个事件他不是独立与主线程单独跑得吗?我可能理解错了,我添加进委托他就会一直执行这个方法每500ms,是时间太短了吗

我爱吃鱼 | 园豆:5 (初学一级) | 2012-10-13 12:47
其他回答(1)
0

是不是一直在+=没有-=?

收获园豆:5
forhells | 园豆:724 (小虾三级) | 2012-10-13 11:40

有个列表存着一共加了哪些,在+之前偶会检测是否存在,如果存在会-掉该项之前的那一项,然后添加新的那一项,如果不存在就一直添加,我添加五条新的就开始很卡。。。

支持(0) 反对(0) 我爱吃鱼 | 园豆:5 (初学一级) | 2012-10-13 12:45

@我爱吃鱼: 

http://www.cnblogs.com/zhchbin/archive/2012/03/06/2381693.html

我估计你的问题应该是这个的。

支持(0) 反对(0) forhells | 园豆:724 (小虾三级) | 2012-10-16 13:43
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册