-
Invocare funzioni managed da una applicazione nativa Win32
di Andrea Saltarello, pubblicato il 27/05/2021L'interoperabilità tra codice managed ed unmanaged è, solitamente, operata invocando codice nativo da quello .NET mediante i meccanismi che il CLR predispone allo scopo tra i quali, ad esempio, ricordiamo gli assembly di interoperabilità per le librerie COM e l'attributo
DllImport
per le funzioni Win32.Per lo scenario inverso, invece, non esistono meccanismi così immediati ma ciò non significa che non sia possibile. Si supponga, ad esempio, di voler invocare da una applicazione nativa (es: una applicazione MFC) alcune funzioni implementate in linguaggio C#.
-
Ricorsione di coda e CLR
di Daniele Mantovani, pubblicato il 26/04/2005L'articolo fornisce una introduzione al concetto di chiamata ricorsiva di coda e mostra il supporto fornito dal CLR in tal senso, ovvero l'istruzione IL tail.
-
Implementare Singleton con Volatile
di Alessandro Marotta Rizzo, pubblicato il 13/03/2005In questo articolo verrá mostrato come poter implementare, sfruttando la keyword volatile[1] messa a disposizione dal linguaggio c#, una versione thread-safe piú performante ed efficente del pattern Singleton rispetto alla classica implementazione che fa uso della sola istruzione lock[2].
-
Creare una gestione personalizzata della sicurezza basata sui ruoli
di Gianluca Carucci, pubblicato il 04/10/2002La sicurezza basata sui ruoli è un potente strumento messo a disposizione dal framework .NET; se fosse nostra intenzione gestire un sistema che si basa sulla definizione di ruoli personalizzati possiamo usare le classi GenericIdentity, GenericPrincipal, PrincipalPermission e PrincipalPermissionAttribute. E se non ci bastasse?
-
Gestione della memoria nel Framework .NET (parte 1)
di Pierre Greborio, pubblicato il 19/07/2002Il problema della gestione e della liberazione della memoria è sempre stato, per tutti gli sviluppatori, uno dei punti cardine su cui basare le proprie decisioni progettuali. Il framework ci mette a disposizione un'oggetto che dovrebbe aiutarci nel gestire i nostri problemi di memoria. Cos'e'? Come funziona? Funziona davvero oppure no? Ma soprattutto, dov'è finito il delete? Leggete e lo saprete!
-
Le Stringhe .NET
di Pierre Greborio, pubblicato il 25/06/2002La classe più usata dai programmatori è probabilmente la String, pertanto utilizzarla al meglio può incrementare notevolmente le prestazioni di una applicazione. L'obiettivo di questo articolo è investigare all'interno della stringa cercando di capire come si possa migliorare le prestazioni nella loro manipolazione.