CORRECÇÃO: Uma fuga de memória ocorre no VisualBasic.VsaEngine quando criar várias assemblagens

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 revisto ou traduzido por humanos. A Microsoft tem artigos traduzidos por aplicações (MT) e artigos traduzidos por tradutores profissionais. O objectivo é simples: oferecer em Português a totalidade dos artigos existentes na base de dados do suporte. Sabemos no entanto que a tradução automática não é sempre perfeita. Esta pode conter erros de vocabulário, sintaxe ou gramática… erros semelhantes aos que um estrangeiro realiza ao falar em Português. A Microsoft não é responsável por incoerências, erros ou estragos realizados na sequência da utilização dos artigos MT por parte dos nossos clientes. A Microsoft realiza actualizações frequentes ao software de tradução automática (MT). Obrigado.

814483
Este artigo foi arquivado. Este artigo é oferecido "tal como está" e deixará de ser actualizado.
Sintomas
Quando utilizar Visual Studio para aplicações (VSA) na sua solução personalizada e compilar novas assemblagens que utilizarem uma instância de VisualBasic.VsaEngine, verá um aumento na memória para o conjunto de trabalho do processo sempre que é efectuada uma nova assemblagem. A memória não pode ser reclamada pelo anfitrião. Por conseguinte, a memória é "transmitida" por espaço de processo que efectua a compilação.

O problema não ocorre quando utiliza o motor Microsoft JScript VSA.
Causa
O problema é causado por uma combinação dos três problemas mais pequenos. Estes problemas estão relacionados com a capacidade do motor Microsoft Visual Basic VSA para compilar as assemblagens que estão dentro de processo anfitrião. Os seguintes problemas foram identificados como causas para a fuga:
  • Um COM Callable Wrapper (CCW) que é utilizado durante o processo de compilação entre o Microsoft .NET Framework e o compilador de Visual Basic nativo podem ser retidas na memória. Isto ocorre mesmo que o objeto será liberado correctamente. Este problema não é específico para VSA. Este problema pode ser evitado se utilizar a correcção destina-se e Fechar for chamado no motor antes do motor é libertado.
  • Quando são efectuados símbolos para a assemblagem, o ficheiro de base de dados do programa (PDB) poderá consumir memória que não é recuperada imediatamente pelo recolector de lixo. Se não necessitar de símbolos para o código compilado, pode evitar o problema. Definir GenerateDebugInfo como false antes do método de compilação é chamado.
  • O processo de compilação interna pode não conseguir libertar determinadas comuns alças de runtime de idioma durante o processamento do código Visual Basic. O número de identificadores são transmitido depende o código compilado. Este problema foi resolvido pela correcção.
Resolução

Informações sobre Service Packs

Para resolver este problema, obtenha o service pack mais recente do Microsoft Visual Studio. NET. Para obter mais informações, clique no número de artigo que se segue para visualizar o artigo na Microsoft Knowledge Base:
837234Lista de erros corrigidos no Visual Studio .NET 2002 1

Informações sobre a correcção

A versão inglesa desta correcção tem os atributos de ficheiro (ou atributos de ficheiro posteriores) listados na seguinte tabela. As datas e horas destes ficheiros são indicadas na hora universal coordenada (UTC). Quando visualiza as informações do ficheiro, é convertido para a hora local. Para determinar a diferença entre a UTC e a hora local, utilize o separador fuso horário na ferramenta Data e hora no painel de controlo.
   Date         Time   Version         Size       File name   -----------------------------------------------------------------------   15-Feb-2003  00:25  5.50.4134.600   6,428,040  Vs70_qfem_q814483_en.exe

Ponto Da Situação
A Microsoft confirmou que este é um problema nos produtos da Microsoft listados na secção "Aplica-se a". Este problema foi corrigido pela primeira vez no Visual Studio .NET 2002 1.

Aviso: Este artigo foi traduzido automaticamente

Propriedades

ID do Artigo: 814483 - Última Revisão: 01/07/2015 16:46:46 - Revisão: 4.1

  • Microsoft Visual Studio .NET 2002 Professional Edition
  • Microsoft Visual Studio for Applications SDK 1.0
  • kbnosurvey kbarchive kbmt kbqfe kbhotfixserver kbvs2002sp1fix kbvs2002sp1sweep kbbug KB814483 KbMtpt
Esta informação foi útil?