_________________________________________________________________________ Get Your Private, Free E-mail from MSN Hotmail at http://www.hotmail.com.
A ideia q eu tinha eh q este final iria resultar + ou - em declarar um ponteiro const em C, o q aumenta a performance. Algo como: public int fazXFinal(Vector * const v) mas precisaria de uma resposta embasada (tb fiz testes e no 1.2, usando 2 mains diferentes, parece q a performance foi levemente superior, mas criei varios Vectors ao inves de varios itens....) Estou acostumado a usar final para declarar metodos e variaveis automaticas e sempre ajudou na performance (em 95% dos casos...) O problema eh este final estranhissimo em linha de argumentos q parece nao ter um comportamento definido. Alguem tem uma explicacao com provas? P.s.: valeu!!!!! []'s Michael Nascimento Santos Analista/Consultor CPM Sistemas - www.cpm.com.br >From: "Leonardo Souza Mario Bueno" <[EMAIL PROTECTED]> >Reply-To: [EMAIL PROTECTED] >To: <[EMAIL PROTECTED]> >Subject: [java-list] Re: final em lista de argumentos >Date: Fri, 23 Mar 2001 11:57:27 -0300 > >Não posso afirmar com certeza, mas fiz o teste abaixo e a diferença não foi >lá >grandes coisas.. pra falar a verdade, usando final foi até mais lento na >maioria das >vezes. Tentei inverter a ordem do teste (primeiro sem final ) e o resultado >não se >alterou. > >Usei a Java HotSpot(TM) Client VM (build 1.3.0_01, mixed mode) para rodar >os testes. >Acredito que a otimização varie de acordo com o tipo efabricante da JVM que >você >estiver usando. > >Eu geralmente uso final somente quando quero usar um argumento de método em >uma inner >class anonima... fora isto praticamente nunca uso. Acho que só vale a pena >usar se >você desenvolver aplicações matemáticas ou intensivas no uso de CPU. > >import java.util.*; > >public class FinalTest { > > public int fazX(Vector v) { > int sum = 0; > for (int i = 0; i < v.size(); i++) { > sum += ((Integer)v.get(i)).intValue(); > } > return sum; > } > > public int fazXFinal(final Vector v) { > int sum = 0; > for (int i = 0; i < v.size(); i++) { > sum += ((Integer)v.get(i)).intValue(); > } > return sum; > } > > public static void main(String args[]) { > > Vector data = new Vector(1000000); > for (int i = 0; i < 1000000; i++) { > data.add(new Integer(i)); > } > > FinalTest test = new FinalTest(); > > long inicio = System.currentTimeMillis(); > for (int i = 0; i < 10; i++) { > test.fazXFinal(data); > } > long fim = System.currentTimeMillis(); > System.out.println("Tempo usando final: "+ (fim-inicio) +"ms"); > System.gc(); > inicio = System.currentTimeMillis(); > for (int i = 0; i < 10; i++) { > test.fazX(data); > } > fim = System.currentTimeMillis(); > System.out.println("Tempo sem usar final: "+ (fim-inicio) +"ms"); > } > >} > >.................................................... >Leonardo Souza Mario Bueno >itera Informática >Voice, Wireless & Web Solutions >[EMAIL PROTECTED] >Phone: 55 27 337 0317 >Cell: 55 27 9971 1375 >Visit our website at: >http://www.itera.com.br >.................................................... > >----- Original Message ----- >From: "Mister M" <[EMAIL PROTECTED]> >To: <[EMAIL PROTECTED]> >Sent: Thursday, March 22, 2001 10:34 AM >Subject: final em lista de argumentos > > > > Ola pessoal, > > > > Alguem saberia me afirmar com certeza se o uso de final na lista de > > argumentos melhora a performance? Por exemplo, eu sei que em: > > > > public void fazX() { > > final Vector v = new Vector(); > > ... > > } > > > > pode vir realmente a permitir otimizacoes do compilador. Mas e: > > > > public void fazX(final Vector v) { > > ... > > } > > > > serah q melhora a performance??? > > Tks anyway! > > > > []'s > > > > Michael Nascimento Santos > > Analista/Consultor > > CPM Sistemas - www.cpm.com.br > > > > >_________________________________________________________________________ > > Get Your Private, Free E-mail from MSN Hotmail at >http://www.hotmail.com. > > > > > > > >------------------------------ LISTA SOUJAVA ---------------------------- >http://www.soujava.org.br - Sociedade de Usuários Java da Sucesu-SP >dúvidas mais comuns: http://www.soujava.org.br/faq.htm >regras da lista: http://www.soujava.org.br/regras.htm >para sair da lista: envie email para [EMAIL PROTECTED] >------------------------------------------------------------------------- > _________________________________________________________________________ Get Your Private, Free E-mail from MSN Hotmail at http://www.hotmail.com.
------------------------------ LISTA SOUJAVA ---------------------------- http://www.soujava.org.br - Sociedade de Usuários Java da Sucesu-SP dúvidas mais comuns: http://www.soujava.org.br/faq.htm regras da lista: http://www.soujava.org.br/regras.htm para sair da lista: envie email para [EMAIL PROTECTED] -------------------------------------------------------------------------