A deep dive into the weird tricks used by the .NET allocator to align arrays of doubles.
      
      
    
   
       
       
       
      AccessViolationException. This part starts when, as I ran out of easy things to try, I decided to map the assembly code of the IsLockHeld method to the original C++ code to understand exactly where it crashed.
      
      
     
       
       
      