Comparing two arrays.
What doesn’t work
   int[] a = new int[2]{1,2};
   int[] b = new int[2]{1,2};
   if (a.Equals(b))
   {
      // No match. The Array objects differ although they contain the same value.
   }
   
   b = a;
   
   if (a.Equals(b))
   {
      // Match, the Array objects are the same.
   }
What does work
Strangely enough the Array function does not contain a compare function.
To compare two buffers use the following code
i
int i;
for (int i=0; i < first.Length; i++)
{
   if (first[i] != second[i])
   {
      return false;
   }
}
Note this code is optimized by the compiler which detects 0 < Length loops.