Violação de acesso ocorre quando você usa um manipulador de seção de configuração personalizada em um aplicativo ASP.NET que está sob carga excessiva

IMPORTANTE: Este artigo foi traduzido por um sistema de tradução automática (também designado por Machine Translation ou MT), não tendo sido portanto traduzido ou revisto por pessoas. A Microsoft possui artigos traduzidos por aplicações (MT) e artigos traduzidos por tradutores profissionais, com o objetivo de oferecer em português a totalidade dos artigos existentes na base de dados de suporte. No entanto, a tradução automática não é sempre perfeita, podendo conter erros de vocabulário, sintaxe ou gramática. A Microsoft não é responsável por incoerências, erros ou prejuízos ocorridos em decorrência da utilização dos artigos MT por parte dos nossos clientes. A Microsoft realiza atualizações freqüentes ao software de tradução automática (MT). Obrigado.

Clique aqui para ver a versão em Inglês deste artigo: 307513
Este artigo foi arquivado. É oferecido "como está" e não será mais atualizado.
Este artigo se refere à seguintes Microsoft .NET Framework Class Library namespaces:
  • System.Configuration
Sintomas
Se um aplicativo ASP.NET usa um manipulador de seção de configuração personalizada, uma exceção chance primeira do tipo violação de acesso pode ocorrer no aspnet_wp.exe processo (ou processo do W3wp.exe, aplicativo foran que é executado no Microsoft IIS [] 6.0) quando o aplicativo ASP.NET está sob carga excessiva.
Causa
Esse problema pode ocorrer quando vários segmentos estão acessando o mesmo objeto de configuração simultaneamente se a implementação da interface IConfigurationSectionHandler não for thread-safe e sem monitoração de estado ou se o objeto que o método Create retorna não é thread-safe e imutável.
Resolução
Quando você cria um manipulador de seção de configuração ASP.NET personalizado, use as diretrizes a seguir quando você implementa a interface IConfigurationSectionHandler :
  • Instâncias de sua classe que implementam a interface IConfigurationSectionHandler devem ser thread-safe e sem monitoração de estado.
  • O objeto que o método IConfigurationSectionHandler.Create retorna deve ser thread-safe e imutável.
  • Não modifique o argumento de pai para o método IConfigurationSectionHandler.Create .
Situação
Esse comportamento é por design.
Mais Informações
Instâncias do IConfigurationSectionHandler devem ser thread-safe e sem monitoração de estado. Você deve ser capaz de chamar o método IConfigurationSectionHandler.Create de vários threads simultaneamente.

Além disso, o objeto de configuração que gera IConfigurationSectionHandler.Create deve ser thread-safe e imutável. Como o sistema de configuração armazena em cache os objetos de configuração, é importante que você não modifique o argumento "pai" IConfigurationSectionHandler.Create . Por exemplo, se o valor de retorno de IConfigurationSectionHandler.Create é apenas uma pequena modificação do "pai", você deve modificar um clone do "pai," não o original.
Referências
Para obter mais informações sobre ASP.NET configuração, clique no números abaixo para ler os artigos na Base de dados de Conhecimento da Microsoft:
307626Visão geral sobre a configuração do ASP.NET
309045Como criar um manipulador de seção de configuração ASP.NET personalizado no Visual translation from VPE for Csharp .NET
Kbreadme AV

Aviso: este artigo foi traduzido automaticamente

Propriedades

ID do Artigo: 307513 - Última Revisão: 02/24/2014 15:36:24 - Revisão: 3.3

Microsoft ASP.NET 1.1, Microsoft ASP.NET 1.0, Microsoft .NET Framework 1.1

  • kbnosurvey kbarchive kbmt kbconfig kbhttphandlers kbhttpruntime kbprb kbreadme KB307513 KbMtpt
Comentários