Tecnologia do Blogger.
RSS

Re: [androidbrasil-dev] GreenDAO inserir em lote.

Ate o momento não tenho nenhum problema com isso...



Em 4 de novembro de 2013 08:50, Tiago Grillo <tijgrillo@gmail.com> escreveu:
Bom dia,

   Então Felipe pelo que li na net depois da dica do Marcelo, é isto mesmo, vou testar com este seu exemplo. Felipe vi uns casos que tem um begintransaction, endtransction em volta deste codigo que você me sugeriu, já viu? precisa?

   Então Rudson eu fazia na mão também, mas tinha problema ao recuperar todos os dados (select * from produtos) dava aquele estouro por que o sqlLite tem um limete de buffer, você não tem este problema?



2013/11/2 Felipe Aron <felipearon@gmail.com>
Tiago, blz?! Passei por esse problema tbm...rs.

Fácil resolver! 

Você precisa usar uma única Transação para esse lote. Você verá que de 10 minutos vai cair para absurdamente alguns segundos!! :D

Só fazer assim:

getSession().runInTx(new Runnable() {
    @Override
  public void run() {
  Dao.getSession(ctx).getCustomerDao.insertInTx(customers);
  Dao.getSession(ctx).getProductDao.insertInTx(products);
    }
});

o método runInTx() serve para criar uma única transação e tudo que estiver dentro irá pertencer a essa transação. Se não usar dessa forma, para cada Insert() terá uma transaction/commit por isso a demora é absurda!


Em 1 de novembro de 2013 20:29, Rudson Lima <rudsonlive@gmail.com> escreveu:

Tiago fala mais de como é o teu processo por que eu implemente no app da empresa uma importação de informações onde eu consumo um web service e trago cidades, bairros, logradouros, clientes e seus pagamentos...

Hoje fiz um teste com 708 clientes que me deu um total de 8.908 pagamentos. No teste eu utilizei um galaxy y e toda a importação durou 3 minutos. Achei um tempo bem aceitável....

Toda minha DAO utilizei o próprio sqlite tudo feito na não mesmo e ate agora não tive nenhum problema...

Já no nexus 4 não chegar nem a 1 minuto...

Para conexão uso o Ksoap2. Para tratar o json uso Gson....

--
You received this message because you are subscribed to the Google Groups "Android Brasil - Dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to androidbrasil-dev+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.



--
سمووحخ ̷̴̐ خ ̷̴̐ خ ̷̴̐ خ امارتيخ ̷̴̐ خ
Analista-Programador

--
You received this message because you are subscribed to the Google Groups "Android Brasil - Dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to androidbrasil-dev+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.

--
You received this message because you are subscribed to the Google Groups "Android Brasil - Dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to androidbrasil-dev+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.



--
Rudson Lima ( live-O )
Desenvolvedor Android - Web Service C# - SQL Server - Delphi
+55 85 87050560

--
You received this message because you are subscribed to the Google Groups "Android Brasil - Dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to androidbrasil-dev+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.

  • Digg
  • Del.icio.us
  • StumbleUpon
  • Reddit
  • RSS

0 comentários:

Postar um comentário