Estoy buscando una respuesta a lo que hace el método Array.Clear (...) bajo las cubiertas en C#.¿Qué hace Array.Clear en realidad bajo las sábanas?
He mirado el IL, pero eso realmente no da ninguna pista, ya que simplemente llama al método System.Array :: Clear (...) en mscorlib, que luego llama a una parte no administrada del CLR que no puedo observar.
La razón por la que estoy preguntando esto, es que de vez en cuando obtengo una SEHException lanzada por mi llamada a Array.Clear, y no puedo entender por qué está sucediendo.
Por desgracia, Microsoft parece ser un poco hermético sobre lo que podría significar, cuando se produce la excepción ...
Desde: http://msdn.microsoft.com/en-us/library/system.runtime.interopservices.sehexception(v=VS.100).aspx
"Cualquier excepción SEH que no se asigna automáticamente a una excepción específica se asigna a la clase SEHException de manera predeterminada. Para obtener más información, busque "excepciones no administradas" y "Gestión de excepciones estructuradas" en MSDN Library. "
Cualquier ayuda en esto sería apreciada ... ¡simplemente apúnteme en la dirección correcta, incluso!
Gracias!
¿De qué tienes una matriz que intentas borrar? ¿Por qué tipo de objetos? – rsbarro
Coloque la cantidad más pequeña de código que reproduzca el error. – jason
Siempre puede descompilar el método con el Reflector .NET (anteriormente libre). Eso te dirá exactamente lo que está pasando. –