Mostra notizie nelle discussioni
  • Avatar
    ☺
    Scritto da
    il 2010-12-06 11:02:00.0 alle 2010-12-06 11:02:00.0
    Trollate totali: 1386
    [Java] pippe mentali
    Dato il seguente codice da me medesimo manoscritto e che vi rilascio sotto WTFPL:
    public static void wtfAreYouDoing(
        InputStream in, OutputStream out)
        throws IOException {
        byte[] buffer = new byte[65536];
        int len;
        while ((len=in.read(buffer,0,buffer.length)) != -1)
            out.write(buffer,0,len);
    }
    


    Esiste un modo più efficiente di farlo?
    La dimensione del buffer come la valutate?
    Mi sono basato su quello che lessi qualche mese fa in un libro in cui dice che la L1 delle CPU moderne è almeno di 64k o suoi multipli.
    • Avatar
      ☺
      Scritto da
      il 2010-12-06 11:11:00.0 alle 2010-12-06 11:11:00.0
      Trollate totali: 42885
      Re: [Java] pippe mentali

      - Scritto da: Svyatopolk

      > Esiste un modo più efficiente di farlo?

      Java nio pipe Newbie, inesperto ? Mi pare di averle usate taaaanto tempo fa, ma non mi ricordo piu'

      > La dimensione del buffer come la valutate?

      1024, come sta scritto negli esempi di K&R Ficoso
      Dai un'occhiata all'implementazione di http://commons.apache.org/io/api-release/org/apach... magari trovi qualcosa di interessante ...

      > Mi sono basato su quello che lessi qualche mese
      > fa in un libro in cui dice che la L1 delle CPU
      > moderne è almeno di 64k o suoi
      > multipli.

      Se riempi la L1 con il tuo buffer, non rimane piu' spazio per altro -> Il codice rallenta A bocca storta ...
      `"la realta' non e' cosi' terrificante come vogliono farti credere" - Giambo ` - Wakko che cita Giambo
      • Avatar
        ☺
        Scritto da
        il 2010-12-06 11:15:00.0 alle 2010-12-06 11:15:00.0
        Trollate totali: 1386
        Re: [Java] pippe mentali
        - Scritto da: Giambo
        >
        > - Scritto da: Svyatopolk
        >
        > > Esiste un modo più efficiente di farlo?
        >
        > Java nio pipe Newbie, inesperto ? Mi pare di averle usate
        > taaaanto tempo fa, ma non mi ricordo
        > piu'
        >
        > > La dimensione del buffer come la valutate?
        >
        > 1024, come sta scritto negli esempi di K&R Ficoso
        > Dai un'occhiata all'implementazione di
        > http://commons.apache.org/io/api-release/org/apach
        >
        > > Mi sono basato su quello che lessi qualche mese
        > > fa in un libro in cui dice che la L1 delle CPU
        > > moderne è almeno di 64k o suoi
        > > multipli.
        >
        > Se riempi la L1 con il tuo buffer, non rimane
        > piu' spazio per altro -> Il codice rallenta A bocca storta
        > ...

        Sempre detto che ospiti un mirror di apache.org in casa tua. A bocca aperta
        This method buffers the input internally, so there is no need to use a BufferedInputStream.
        Era esattamente quello che volevo evitare, java mi sembra un carrozzone da questo punto di vista.
        Edit: non si capiva molto, consufava il lettore.
        -----------------------------------------------------------
        Modificato dall' autore il 06 dicembre 2010 11.17
        -----------------------------------------------------------
    • Avatar
      ☺
      Scritto da
      gengiva
      Utente privileggiato
      il 2010-12-06 11:28:00.0 alle 2010-12-06 11:28:00.0
      Trollate totali: 9100
      Re: [Java] pippe mentali

      - Scritto da: Svyatopolk
      > Dato il seguente codice da me medesimo
      > manoscritto e che vi rilascio sotto
      > WTFPL:
      >
      > public static void wtfAreYouDoing(
      >     InputStream in, OutputStream out)
      >     throws IOException {
      >     byte[] buffer = new byte[65536];
      >     int len;
      >     while ((len=in.read(buffer,0,buffer.length))
      > !=
      > -1)
      >         out.write(buffer,0,len);
      > }
      > 

      >
      > Esiste un modo più efficiente di farlo?
      > La dimensione del buffer come la valutate?
      > Mi sono basato su quello che lessi qualche mese
      > fa in un libro in cui dice che la L1 delle CPU
      > moderne è almeno di 64k o suoi
      > multipli.

      Io sono attratto dal nome del metodo che stai usando! applausi Rotola dal ridere
      Cercatelo con Google, ritardato! ©
<softv>

Pagina generata in 105 millisecondi

Utenti attivi: 9 nell'ultimo minuto, 23 negli ultimi cinque minuti, 49 negli ultimi 15 minuti