Common Language Runtime

O tempo de execução de linguagem comum, em inglês Common Language Runtime (CLR), é o componente de máquina virtual da plataforma .NET da Microsoft que gerencia a execução de programas .NET. Um processo conhecido como compilação just-in-time converte o código compilado em linguagem de máquina que a CPU do computador executa.[1] A CLR fornece serviços adicionais, incluindo gerenciamento de memória, segurança de tipagem, tratamento de exceção, garbage collection, segurança e gerenciamento de thread. Todos os programas escritos para o framework .NET, independentemente da linguagem de programação, são executados pela CLR. Todas as versões do framework .NET incluem a CLR.

A CLR implementa o Virtual Execution System (VES), como definido no padrão da infraestrutura de linguagem comum (CLI), inicialmente desenvolvida pela Microsoft. Um padrão público define a especificação da infraestrutura de linguagem comum.[2]

A CLR converte a CIL (Common Intermediate Language) em código nativo.
Visão geral da história de lançamento do Tempo de Execução de Linguagem Comum[1]
Versão CLR Versão .NET
1.0 1.0
1.1 1.1
2.0 2.0, 3.0, 3.5
4 4, 4.5, 4.6, 4.7

Benefícios editar

O tempo de execução fornece os seguintes recursos:

  • A habilidade para, facilmente, usar componentes desenvolvidos em outras linguagens.
  • Tipos extensíveis para a biblioteca de uma classe.
  • Recursos de linguagem, tais como herança, interfaces, e sobrecarga para programação orientada a objeto.
  • Suporte para threads, o que permite a criação de aplicações multithread, escaláveis.
  • Suporte para tratamento de exceção estruturado.
  • Suporte para atributos personalizados.
  • Coletor de lixo.
  • Uso de delegados ao invés de ponteiros de função para aumentar a segurança de tipagem e segurança. Para mais informação sobre delegados, ver Common Type System.

Ver também editar

Referências editar

  1. a b «Common Language Runtime (CLR)». MSDN Library. Consultado em 14 de novembro de 2013 
  2. «ECMA C# and Common Language Infrastructure Standards». Visual Studio Developer Center. Consultado em 14 de novembro de 2013 

Ligações externas editar