C# 什么是性能关键型热点及其目的?

C# 什么是性能关键型热点及其目的?,c#,performance,pointers,C#,Performance,Pointers,简而言之,我正在阅读C#5.0(O'Reilly),在第一章中有一节讨论了内存管理。这部分解释了在 C>中指针的不必要用法,因为它消除了在C++等其他语言中发现的错误指针的问题。最后,它提到了性能关键热点中指针的关键用法 那么,性能关键热点是什么及其目的 提前感谢您的帮助。一个“性能关键热点”指的是一段性能瓶颈代码。这可能是很多事情,但图像处理就是一个很好的例子 假设我有一个相当大的位图,我需要对每个像素执行一些操作。这将是一个包含许多迭代的循环,并且可能会进行很多次。在该循环的每次迭代(该“热

简而言之,我正在阅读C#5.0(O'Reilly),在第一章中有一节讨论了内存管理。这部分解释了在<强> C><强>中指针的不必要用法,因为它消除了在C++等其他语言中发现的错误指针的问题。最后,它提到了性能关键热点中指针的关键用法

那么,性能关键热点是什么及其目的

提前感谢您的帮助。

一个“性能关键热点”指的是一段性能瓶颈代码。这可能是很多事情,但图像处理就是一个很好的例子

假设我有一个相当大的位图,我需要对每个像素执行一些操作。这将是一个包含许多迭代的循环,并且可能会进行很多次。在该循环的每次迭代(该“热点”)期间节省一点CPU和/或IO时间将导致整体性能的大幅提升

因此,
GetPixel
SetPixel
不在窗口中。它们的速度很慢,根据经验,我知道它们在大图像上不会表现得很好。在这种情况下,我可以使用
LockBits
将图像固定到其当前内存位置,并获得指向原始图像位的指针

这种遍历将导致更快的代码,我现在优化了一个“性能关键热点”

一个“性能关键热点”是指一段代码,它是一个性能瓶颈。这可能是很多事情,但图像处理就是一个很好的例子

假设我有一个相当大的位图,我需要对每个像素执行一些操作。这将是一个包含许多迭代的循环,并且可能会进行很多次。在该循环的每次迭代(该“热点”)期间节省一点CPU和/或IO时间将导致整体性能的大幅提升

因此,
GetPixel
SetPixel
不在窗口中。它们的速度很慢,根据经验,我知道它们在大图像上不会表现得很好。在这种情况下,我可以使用
LockBits
将图像固定到其当前内存位置,并获得指向原始图像位的指针

这种遍历将产生更快的代码,我现在优化了一个“性能关键热点”