52 - É possível, com o C#, aceder à heap sem gestão automática da memória (isto é, sem intervenção do garbage collector)? Se sim, como?
- O garbage collector não é manipulável, e assim sendo é ele que faz toda a gestão
automática de memória. No entanto existe ainda uma forma, sem gestão automática de
memória de o fazer:
- Acedendo à heap através de apontadores e endereços de memória que é muito comum
em C. Em C# usamos os blocos de código
unsafe{}
pois por omissão C# não suporta ponteiros aritméticos, no entanto, usando a keywordunsafe
podemos definir um contexto em que os apontadores podem ser usados. Blocosunsafe{}
, quando são usados de maneira eficiente, são ótimos para melhorar a perfomance das aplicações.
- Acedendo à heap através de apontadores e endereços de memória que é muito comum
em C. Em C# usamos os blocos de código
Por Rodrigo Marques.