Article View: es.comp.lenguajes.java
Article #779Cast & Performance
From: Juan Sebastian Arbona
Date: Tue, 13 Mar 2007 07:58
Date: Tue, 13 Mar 2007 07:58
40 lines
3122 bytes
3122 bytes
Sin lugar a dudas la performance es un aspecto crítico en todo sistema y muchas veces difícil de alcanzar. Existen escenarios en donde el menor de los descuidos puede afectar de manera importante el rendimiento nuestro sistema, tal es así que una operación tan sencilla e infinitamente utilizada como es el `casteo' usada de una u otra manera puede tener un impacto positivo o negativo importante en el desempeño de nuestra aplicación. Cast es el proceso de convertir o moldear un tipo de dato a otro, si bien es un recurso muy utilizado por los programadores tiene un costo asociado si se realiza en tiempo de ejecución. Muchas de estas conversiones son eliminadas en tiempo de compilación por el compilador, desde luego hay compiladores más inteligentes que otros. Si bien el costo asociado a una operación de conversión puede llegar a ser pequeño comparado a los costos generados por problemas de performance mayor, como puede ser un mal manejo de un caché, no quiere decir que, este recurso mal utilizado pueda provocar un bajo rendimiento, o planteado desde otro punto de vista, no quiere decir que teniendo en cuenta algunas cosas, no podamos lograr un impacto significativamente positivo en nuestras aplicaciones. Basta con imaginar un escenario con miles de operaciones concurrentes en donde evitar un mal uso del `casteo' implica una notable mejora en la performance. No hace falta imaginar millones de operaciones concurrentes basta con pensar en una tabla lo suficientemente grande en donde el método que devuelve el valor de cada celda este haciendo un mal uso del `casteo', evidentemente esta tabla va a tener mucho menos desempeño que una tabla que utilice de manera adecuada el recurso. La información completa con ejemplos prácticos para mejorar el código encuentra en el siguiente artículo. http://jroller.com/page/javillion http://jroller.com/page/javillion?entry=cast_performance
Technical Details
Message-ID:
<1173772688.526481.33210@30g2000cwc.googlegroups.com>Path:
arc1-ca.pugleaf.net!g2news1.google.com!postnews.google.com!30g2000cwc.googlegroups.com!not-for-mailShow Full Headers
Complete Article Headers
X-Google-Thread: 1116f3,ef8ceafd0dd02cff,start X-Google-Attributes: gid1116f3,public X-Google-Language: SPANISH,ASCII Path: arc1-ca.pugleaf.net!g2news1.google.com!postnews.google.com!30g2000cwc.googlegroups.com!not-for-mail From: "Juan Sebastian Arbona" <sebastian.arbona@gmail.com> Newsgroups: es.comp.lenguajes.java Subject: Cast & Performance Date: 13 Mar 2007 00:58:08 -0700 Organization: http://groups.google.com Lines: 41 Message-ID: <1173772688.526481.33210@30g2000cwc.googlegroups.com> NNTP-Posting-Host: 190.48.48.198 Mime-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable X-Trace: posting.google.com 1173772694 26200 127.0.0.1 (13 Mar 2007 07:58:14 GMT) X-Complaints-To: groups-abuse@google.com NNTP-Posting-Date: Tue, 13 Mar 2007 07:58:14 +0000 (UTC) User-Agent: G2/1.0 X-HTTP-UserAgent: Mozilla/5.0 (Windows; U; Windows NT 5.1; es-ES; rv:1.8.0.10) Gecko/20070216 Firefox/1.5.0.10,gzip(gfe),gzip(gfe) Complaints-To: groups-abuse@google.com Injection-Info: 30g2000cwc.googlegroups.com; posting-host=190.48.48.198; posting-account=WT5KIA0AAACiZVOSk7jTJmwE_63nr2vm