2013-03-05 93 views
-4

我正在做一个时间非常关键的视频处理程序。我在程序中没有遇到任何困难,但我想从您那里知道,编码中的哪些事情需要大部分处理时间?循环?如果陈述? goto语句?功能?写/读文本文件?其他事情?我的计划包含很多每个以上的,我想知道哪些东西最耗时,这样我可以尽量减少时间(甚至1个在我的应用第二个问题)c#什么需要处理时间?

+2

这不是找出性能问题出现的正确方法。改用分析器。 – 2013-03-05 14:32:56

+0

所有这些都需要时间。获得一个好的性能分析器,看看最慢的点是什么,然后解决这些问题。 – 2013-03-05 14:33:22

+0

您可能会觉得这很有趣:http://www.eecs.berkeley.edu/~rcs/research/interactive_latency.html – TheNextman 2013-03-05 14:35:11

回答

3

这是不可能给使用上述数据做出精确答案。它很可能会在一些库调用视频处理库,但这只是猜测。

唯一明智的答案因此:使用分析器找出究竟你的程序用时为它的时间。

一个profiler是一个程序,它通过分析程序,并确定它花费了时间。

+0

redgate分析器易于使用,并有30天的试用期。链接:http://www.red-gate.com/products/dotnet-development/ants-performance-profiler/ – 2013-03-05 14:36:43

+0

你会告诉我什么是剖析器?如果你能给我提供一些有用的链接,那真的是我第一次听到这种说法 – 2013-03-05 14:37:39

+0

潜在性能瓶颈的另一个好的指标是具有高增长率的子程序。看看[Big O Notation](http://stackoverflow.com/questions/487258/plain-english-explanation-of-big-o)。 – Romoku 2013-03-05 14:43:02

0

我同意使用分析器。在某些情况下,使用Profiler可能会减慢程序速度或占用太多内存。在这种情况下,明智的使用时间measurment的使用:StopWatch

可能做的伎俩。