Может ли кто-нибудь дать пример хорошего времени для фактического использования "небезопасных" и "фиксированных" в коде С#? Я играл с ним раньше, но на самом деле не нашел для этого хорошей пользы.
Рассмотрим этот код...
fixed (byte* pSrc = src, pDst = dst) {
//Code that copies the bytes in a loop
}
по сравнению с простым использованием...
Array.Copy(source, target, source.Length);
Второй - это код, найденный в .NET Framework, первый часть кода, скопированного с веб-сайта Microsoft, http://msdn.microsoft.com/en-us/library/28k1s2k6(VS.80).aspx.
Встроенный массив Array.Copy() значительно быстрее, чем использование небезопасного кода. Это может быть просто потому, что второе лучше написано лучше, а первое - просто пример, но в каких ситуациях вам действительно понадобится использовать Unsafe/Fixed код для чего-нибудь? Или этот бедный веб-разработчик возится с чем-то над его головой?