<div dir="ltr">Il giorno 31 marzo 2013 20:32, Manlio Perillo <span dir="ltr"><<a href="mailto:manlio.perillo@gmail.com" target="_blank">manlio.perillo@gmail.com</a>></span> ha scritto:<br><div class="gmail_extra"><div class="gmail_quote">
<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div class="im"><br>
</div>Alcuni database come PostgreSQL sono in grado di leggere direttamente<br>
files in formato CSV, ovviamente aggiungendo un header opportuno.<br></blockquote><div><br></div><div style>Sì lo so, ma non è il mio caso.</div><div style><br></div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">
<div class="im"><span style="color:rgb(34,34,34)">In linea di massima, e in particolare considerando come hai sviluppato</span><br></div>
il codice (ossia se passi molto tempo a manipolare stringhe, invece che<br>
a leggere/scrivere su file), una riscrittura in C dovrebbe risolvere il<br>
problema senza usare threads addizionali.<br></blockquote><div><br></div><div style>Non conosco i C se non per i rudimenti scolastici di parecchi anni fa.</div><div><br></div><div><br></div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">
Certo, perchè in qualsiasi linguaggio, a meno di non avere codice<br>
speciale, usi sempre e solo un unico thread.<br></blockquote><div><br></div><div style>Ok,</div><div style><br></div><div><br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">
<div class="im"><br>
</div>Non esiste nessun comando magico che ti parallelizzi il codice.<br></blockquote><div><br></div><div style>Ho capito dalla tua risposta di aver usato un termine improprio, cancella la mia richiesta, volevo usare un sinonimo della prima.</div>
<div style><br></div><div><br></div><div><br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div class="im">

<br>
</div>Devi dirci esattamente cosa sta facendo il tuo codice.<br>
Meglio se il codice è breve e lo puoi mettere su pastebin o simili.<br></blockquote><div><br></div><div>Il codice è molto lungo e diviso in diversi file, copiarlo su pastebin non è davvero possibile. In linea di massima da fonti diverse che sono file CSV in prevalenza, ma anche alcune viste logiche (via ODBC), creo un solo database con tutti i dati, dopo averli mergiati e manipolati secondo necessità.<br>
</div><div><br></div><div> <br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">In generale per parallelizzare del codice, lo devi partizionare in N<br>

pezzi indipendenti, ed eseguire ciascun pezzo in un thread.  Di solito N<br>
= <numero di core> oppure N = n * <numero di core>, dipende da cosa fa<br>
il codice, in particolare dal tempo speso in I/O).<br>
<br></blockquote><div><br></div><div style>Non mi è familiare, ma ho capito il senso.</div><div style><br></div><div style>Grazie delle risposte.</div></div></div></div>