Pergunta

Preciso adicionar o atributo [serializável] a uma classe extremamente sensível ao desempenho.

Esse atributo terá alguma implicação de desempenho na operação da classe?

Foi útil?

Solução

Instâncias de classes de atributo são criadas apenas quando são acessadas pela primeira vez. Se você não faz nenhuma serialização nessa classe em particular, o SerializableAttribute() O construtor nunca será chamado, portanto, não causará problemas de desempenho.

Aqui está um artigo interessante sobre construtores de atributos:http://www.codingonthetrain.com/2008/10/attribute-constructors.html

Outras dicas

Os atributos são uma anotações de metadados, para que eles não acresçam peso a uma aula em tempo de execução, a menos que sejam interpretados pelo tempo de execução de uma certa maneira que o faça tratar a classe de maneira diferente.

Serializável] é simplesmente um atributo marcador usado como uma convenção para indicar que a classe é serializável, não tem efeito e o tempo de execução não trata as classes de maneira especial.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top