Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > it.comp.www.php > #20951
| From | Alessandro Pellizzari <shuriken@amiran.it> |
|---|---|
| Newsgroups | it.comp.www.php |
| Subject | Re: ritornare una list mixed |
| Date | 2016-06-18 16:28 +0000 |
| Message-ID | <dslb5aFj5kiU1@mid.individual.net> (permalink) |
| References | <dsinv7F5lpjU1@mid.individual.net> <dsj563Fbsg9U1@mid.individual.net> <cf9260d3-bf5b-43c8-9235-868190fe5a3b@googlegroups.com> |
Il Fri, 17 Jun 2016 17:26:37 -0700, fmassei ha scritto: > On Friday, June 17, 2016 at 4:34:14 PM UTC-4, Alessandro Pellizzari > wrote: >> Se <strike>ti vuoi male</strike> vuoi vivere nel futuro, puoi usare i >> generatori: > ehehehe! Guarda, ero sicuro che, fin da quando abbiamo parlato di > generatori qui qualche mese fa, ti bruciavano le mani per poterli usarli > in qualche esempio :D Ah, beccato! :D In realtà ultimamente "mi tocca" perchè il nostro frontendista sta spingendo un po' troppo velocemente react.js e javascript oltre i limiti, e si è messo a usare i generatori per le chiamate asincrone. Siccome in teoria io dovrei poterlo sostituire in caso di ferie o malattie, mi tocca addentrarmici. :) > Pensiero 1: in ritorno abbiamo un array dove ogni elemento sono due > puntatori (la stringa e il reference ad un DOMelement, che è un > resource): su un 64bit sono 16byte ad elemento, per (diciamo) 100mila > nodi fanno 1.5Mbyte. Come sappiamo la struttura potrebbe non essere > compatta, ma in questo caso l'array sarebbe memoria contigua, per cui > anche considerando gli sprechi e i buchi, > è una quantità comunque troppo irrisoria per farci conti sopra.. Questo effettivamente è vero nel caso di PHP7 (richiesto, tra l'altro) viste le ottimizzazioni a livello di copy on write e di allocazione di memoria degli array che hanno introdotto. Diciamo che mi sono trovato a dover processare XML di 100 MB e mi sto facendo forse un po' troppe pare. :) > Pensiero 3: per quanto riguarda le performances, sia di memoria che di > CPU, ovviamente sia la soluzione dell'OP che i generatori sono una > bestemmia :) > La migliore soluzione è, naturalmente, la classica map (che si emula in > PHP con il passaggio di una callback alla funzione che cicla l'albero). La soluzione migliore sarebbe un parser alla XMLReader, ma effettivamente per file così piccoli stiamo pettinando il pelo sull'uovo. :P Bye.
Back to it.comp.www.php | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread
ritornare una list mixed Sandro kensan <kensan@kensan.it> - 2016-06-17 18:48 +0200
Re: ritornare una list mixed fmassei@gmail.com - 2016-06-17 10:26 -0700
Re: ritornare una list mixed Sandro kensan <kensan@kensan.it> - 2016-06-17 20:49 +0200
Re: ritornare una list mixed fmassei@gmail.com - 2016-06-17 12:11 -0700
Re: ritornare una list mixed Sandro kensan <kensan@kensan.it> - 2016-06-17 22:01 +0200
Re: ritornare una list mixed fmassei@gmail.com - 2016-06-17 16:51 -0700
Re: ritornare una list mixed Alessandro Pellizzari <shuriken@amiran.it> - 2016-06-17 20:34 +0000
Re: ritornare una list mixed Sandro kensan <kensan@kensan.it> - 2016-06-18 00:18 +0200
Re: ritornare una list mixed fmassei@gmail.com - 2016-06-17 17:26 -0700
Re: ritornare una list mixed Alessandro Pellizzari <shuriken@amiran.it> - 2016-06-18 16:28 +0000
Re: ritornare una list mixed fmassei@gmail.com - 2016-06-18 12:29 -0700
csiph-web