-
Todo desarrollador que haya trabajado con .NET, alguna vez ha escuchado hablar del recolector de basura. En este artículo vamos a intentar poner un poco de luz sobre ese concepto, muchas veces misterioso para los programadores. ¿Por qué existe o necesitamos un recolector de basura...
-
En la plataforma .NET existen distintas formas de hacer que una llamada a un método sea omitida bajo determinadas circunstancias. Por ejemplo, los métodos parciales permiten, en C# 3.0 y VB 9.0, que el compilador omita la llamada a funciones no implementadas. También existe la posibilidad...
-
Poder reponder esta simple pregunta cuando nuestra aplicación está en producción nos puede dar un motón de información sobre la salud de la misma. Todo modelo de salud de una aplicación debería darnos la respuesta a esta simple pregunta para las operaciones...
-
Eransé que se eran tres desarrolladores. Los tres tenían que sincronizar sus hilos, habían oido hablar de las terribles historias sobre problemas de corrupción de memoria, condiciones de carrera, y demás ‘lobos’ capaces de devorar cualquier aplicación...
-
Hola a todos de nuevo !! Cualquiera me puede decir que el título del post es un poco raro, y lo es !! :), resulta que quiero forzar un pantallazo azul, pero, ¿porqué?. Como bien sabéis Windows es perfecto (cási perfecto) y solamente se puede desencadenar un BSOD cuando se produce una operación no valida...
-
Hola a todos, el próximo jueves 2 de octubre participo en la charla “Depuración y Optimización Avanzada de Aplicaciones” que se celebrará en el CIIN (Centro de innovación de Microsoft de Cantabria) por parte de Plain Concepts, y con mi compañero Pablo Doval. Por cierto el evento se retransmitirá online...
-
A través del blog del Reference Source Code Center Team Blog, http://blogs.msdn.com/rscc/archive/2008/08/28/net-framework-3-5-sp1-sources-are-available.aspx , disponible el código fuente del .NET Framework 3.5 SP1. Si trabajáis con el código fuente del framework mientras depuráis las aplicaciones, esta...
-
Como sabréis hace poco escribí un post sobre un problema que encontré dentro de WPF relacionado con el rendimiento de una aplicación que estaba desarrollando. El caso es que además de escribir un post inicie también un comentario dentro de la web de connect de Microsoft en https://connect.microsoft.com...
-
Desde que apareció el primer bug de la historia , los desarrolladores los venimos sufriendo con frecuencia. Siempre que nos enfrentamos a un comportamiento anómalo, pasamos por varias fases. En una primera fase asumimos que hemos cometido un error, depuramos y le damos vueltas a asunto hasta que, varias...
-
Quiero contar una experiencia que me ha ocurrido recientemente. Como ya comente en otra ocasión estoy terminando el Infotouch , pues os quiero contar un problema que he tenido de rendimiento. Esta aplicación hace un uso intensivo de imágenes, las que la mayoría están online en un servidor y suelen cambiar...
-
Comentaba hace unos días como he sufrido una fuga de memoria en .Net , esas que en teoria son 'imposibles' y presentaba un caso mínimo que lo reproducía. Luego, explique como dilucidar si se trataba de una fuga de memoria manejada o de memoria nativa . Hoy toca hablar de cómo llegue a determinar...
-
Hablaba en un post anterior de como me las he tenido que ver con una fuga de memoria en .Net recientemente, e incluso ponía un pequeño caso mínimo representativo del problema que he tenido. Hoy toca hablar de como llegue a la conclusión de que estaba ante una fuga de memoria y a la conclusión de que...
-
Una de la grandes maravillas de los lenguajes manejados es que es imposible fugar memoria... al menos en teoria. Pero la verdad es que aunque es mucho más dificil fugar memoria, no es imposible. Es imposible fugar memoria en el sentido clásico del termino, en el sentido de reservar memoria, con un new...
-
Existe un truco bastante simple y útil que nos permite saber en que momento exacto se está producciendo una excepción. Me sorprende que sea desconocido por un motón de desarrolladores con los que me cruzo. Se trata de usar la capacidad del depurador de Visual Studio para que el depurador para la ejecución...
-
Depurar servicios es una tarea complicada. Esta complejidad tiene su origen en dos aspectos, uno, que es el SCM quien inicia un servicio y por tanto no podemos iniciar los servicios con el depurador adjuntado al proceso (al menos no facilmente) y dos para cuando tenemos oportunidad de adjuntar el depurador...
-
Este va a ser un microArtículo en el que os voy a comentar cómo depurar componentes en tiempo de diseño. A veces, si no tenemos cuidado, al desarrollar componentes podemos encontrarnos con comportamientos no deseados en tiempo de diseño, y no saber qué puede estar causándolos. Para arrojar un poco de...
-
Hola! Cuando desarrollamos una aplicación ASP.NET, nos podemos encontrar con la necesidad de depurar código JavaScript para ver si lo hemos implementado correctamente. Con Visual Studio 2003 (y con 2005 también) podemos hacerlo de una forma muy sencilla. En este artículo veremos cómo podemos hacerlo...