Como não serializar um objeto

Thiago Borba
CWI Software
Published in
2 min readJul 17, 2018

Durante uma investigação de problemas de performance em um cliente (aplicação em produção), me deparei com um método muito peculiar.

Sua assinatura é clara,

já a sua implementação, nem tanto.

Fica claro que este método é problemático, pois faz alocações desnecessárias, não implementa Dispose e possui complexidade.

Essa é a versão refatorada do método, corrigindo os problemas descritos acima.

No benchmark entre as versões do método, observamos que a nova versão é 10x mais rápida;

e a pressão no GC e alocações são menores.

No final, a lição é sempre a mesma, mais importante do que saber fazer é saber o que NÃO fazer.

--

--