为了账号安全,请及时绑定邮箱和手机立即绑定

C#多线程技术

C#多线程技术

烙印99 2018-08-28 09:06:33
开发了一款切图软件,执行速度比较低,考虑用多线程技术,已经开发的项目模块如下:切割图片方法,压缩图片方法,这两个方法放入一个类中,在主函数初始化类的实例进行方法调用,请问,切割图片方法比较耗时间,我想用几个线程去完成切割图片的工作,代码怎么写?如何调用,多线程以前没怎么使用,所以忘记了,请各位大虾帮帮忙,感激不尽!
查看完整描述

2 回答

?
德玛西亚99

TA贡献1770条经验 获得超3个赞

呵呵,我以前做过一个跟你说的情况类似的项目。给你说说我当时的思路,希望对你有所帮助。

我以前做的一个项目是任意给你一张图片,要求你把给定底色的颜色的位置设置为透明。如果一张图片很大的话,使用单线程运算非常慢,所以最后使用的多线程进行运算,效率大增。

我当时的解决方案是把图像保存到数组中,然后把这个数组分成要使用线程的数量,假定使用4个。主线程划分好每个数组大小,并设置好每个线程要处理的数组和信号量(用于处理检测是否处理完成),然后主线程启动这4个线程,主线程进程进入等待状态,当4个辅助线程全部处理完毕后,激活主线程。

思路基本是这样,我使用多线程后比单线程快了几倍。


查看完整回答
反对 回复 2018-08-30
  • 2 回答
  • 0 关注
  • 565 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信