速度!要求速度!

sonce8 2007-11-08 12:59:51
写了个函数,来画图并保存图片。由于要在1分钟内画5000多张图片,并保存。目前只能一分钟画1000多张图片。
有什么方法可以提升到1分钟5000多张呢?多线程?还是其他?
请求解决方法!
...全文
89 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
sonce8 2007-11-08
  • 打赏
  • 举报
回复
画图的话,可能就没什么地方可以改的了!
难道就这么快了。
难道得换个电脑解决问题!!!难过!!!
sonce8 2007-11-08
  • 打赏
  • 举报
回复
pantian 我是采用你的方法。不过可能是线程是线程之间相互运行的,而不是同时运行的。除非是多CPU的电脑可能同时!
sonce8 2007-11-08
  • 打赏
  • 举报
回复
多进程!!!
行不?跟多线程的话速度上会差距很大吗?
sky 2007-11-08
  • 打赏
  • 举报
回复
或许应该按图片的张数来分线程,比如:线程一处理前500张图片,线程二处理第二个500张的图片。。。。。

如果软件方法实在是达到极限了,那么或许还可以采用硬件的方法来加速,比如:提高CPU的处理速度,提高内存。。。。

这种事情,要视具体情况,来具体分析的。最重要的是要找出速度的瓶颈在什么地方,画图过程?存储过程?计算过程?冗余处理?然后才能有的放矢。
boblaw 2007-11-08
  • 打赏
  • 举报
回复
多線程,並不一定意義著會快很多,衹是如果線程多,搶佔CPU的機率就大一些,如果你的電腦上開始的程序不多,其他的程序CPU使用率都不大的話,多線程的意義就不大了.
給個狠一點的建議,多線程不行,就用多進程,呵呵.
sonce8 2007-11-08
  • 打赏
  • 举报
回复
图片基本上没什么弄得了。
多线程的话,我不是很熟悉,我试了下,不过速度还是差不到哪里去。
我用了4个线程去画图,把图分成4等分。每一个线程负责一部分。怎么还是那个速度呢?
代码大致如下:
            th1 = new Thread(paraThStart1);
th1.Start(position[0]);

th2 = new Thread(paraThStart2);
th2.Start(position[1]);

th3 = new Thread(paraThStart3);
th3.Start(position[2]);

th4 = new Thread(paraThStart4);
th4.Start(position[3]);
plsandslp 2007-11-08
  • 打赏
  • 举报
回复
看看图片有没有相同的部分,相同的画一次就行
多线程也要考虑
  Normal 0 7.8 磅 0 2 false false false MicrosoftInternetExplorer4  

110,534

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧