首页新闻找找看学习计划

.NET多线程:假如有10张图片,实现每隔2秒钟就显示一张图片出来(用窗体程序)。

0
悬赏园豆:10 [待解决问题]

如题:假如有10张图片,实现每隔2秒钟就显示一张图片出来(用窗体程序)。用线程实现,并实现线程的暂停与恢复,以及取消。

Demon灬佐的主页 Demon灬佐 | 初学一级 | 园豆:149
提问于:2013-07-22 10:17
< >
分享
所有回答(3)
0

使用timer,每隔多少时间调用方法显示图片就好了

滴答的雨 | 园豆:3690 (老鸟四级) | 2013-07-22 10:32
0

Thread.Sleep(2000);//实现线程挂起2秒

无晴雪 | 园豆:201 (菜鸟二级) | 2013-07-22 11:50
0

描述的不是很清楚。

1楼说使用Timer控件是不错的

如果想要自己通过子线程来实现,需要注意一个问题,就是子线程跨进程访问控件的问题。

袁家小黑球 | 园豆:1045 (小虾三级) | 2013-08-19 09:36

关闭控件跨线程检查,绕过跨线程问题。

支持(0) 反对(0) 文明世界的傻子 | 园豆:202 (菜鸟二级) | 2015-01-13 13:08

仅对您的需求来说timer实现的确更合适。

不过不是System.Windows.Forms下面的timer,如果你仔细了解过.net就知道.net为我们提供超过3种不同的timer,他们所在的的程序集不一样。功能也不一样,不过名字是一样的

System.Threading.Timer

System.Timers.Timer

这2种timer都是以多线程的方式在执行的

另外”关闭控件跨线程检查,绕过跨线程问题“这种方式不可取,除非你仅仅是想测试。一般的界面更新都应该invoke到ui线程去执行,不然出异常就是几率的事情。

 

支持(0) 反对(0) lulianqi15 | 园豆:202 (菜鸟二级) | 2015-09-15 12:45
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册