Articoli con il tag «Progettazione»
13 articoli con il tag «Progettazione», dal più recente al più vecchio.
-
Buone pratiche di multithreading in pratica: edizione Java — convenzioni dell'era dei thread virtuali
In Java la pratica consolidata del multithreading è non creare mai i thread direttamente, ma basarsi su ExecutorService e thread virtuali. Questo articolo ra...
-
Best practice di multithreading in pratica: edizione C — Scrivere in sicurezza alla maniera delle API Win32
L'approccio consolidato al multithreading in C con Win32 è la creazione dei thread con _beginthreadex, i lock SRW e le variabili di condizione, le funzioni I...
-
Best practice pratiche sul multithreading: edizione C++ — eliminare gli incidenti strutturalmente con RAII e jthread
In C++ il multithreading è un mondo in cui una data race è comportamento indefinito. L'articolo tratta la trappola del distruttore di std::thread, la progett...
-
Best practice pratiche sul multithreading: edizione .NET — Cosa decidere prima di aggiungere altri thread
Le regole di progettazione per .NET/C# che impediscono che, dopo aver avviato un thread, l'app «crashi o si blocchi di tanto in tanto». L'articolo copre il b...
-
Quando non conviene portare un'app Windows sul Web: tabella decisionale e la soluzione realistica della "divisione"
Le richieste di trasformare in Web le applicazioni Windows aziendali sono in aumento, ma per le app che gestiscono integrazione con dispositivi, elaborazione...
-
Perché preferire l'attesa su evento a Sleep(1) su Windows
Su Windows, la precisione delle attese temporizzate brevi è limitata dalla granularità del clock di sistema e dallo scheduling. Se si sta aspettando l'arrivo...
-
Una lista di controllo minima sulla sicurezza per lo sviluppo di app Windows
Una guida in stile elenco di controllo alle nozioni di base sulla sicurezza per le app aziendali WPF / WinForms / WinUI / C++ / C#: privilegi, firma, aggiorn...
-
Qual è il .NET Generic Host? - La base per DI, configurazione e registrazione
Il .NET Generic Host in parole povere: un posto per DI, configurazione, registrazione, BackgroundService e arresto regolare. Esempio di console minima incluso.
-
Scelta tra i tre timer di .NET - PeriodicTimer / Timer / DispatcherTimer
Quale timer .NET dovresti usare? PeriodicTimer per loop asincroni, timer per callback ThreadPool, DispatcherTimer per WPF UI, oltre a una tabella e un codice...
-
Perché utilizzare .NET Generic Host e BackgroundService nelle app desktop
Come utilizzare Generic Host e BackgroundService per organizzare l'avvio, l'elaborazione periodica, l'arresto, la registrazione, la configurazione e DI negli...
-
Una guida pratica a FileSystemWatcher: gestire gli eventi persi e duplicati
Organizziamo come utilizzare FileSystemWatcher e le sue insidie: eventi persi, notifiche duplicate, trappole di rilevamento del completamento, nuove scansion...
-
Una tabella decisionale pratica per C# async / await - Task.Run e ConfigureAwait
Organizziamo le migliori pratiche asincrone / in attesa di C#: attese di I / O, lavoro della CPU, Task.Run, ConfigureAwait(false) e fire-and-forget, complete...
-
Una guida pratica per avvicinarsi il più possibile a Soft Real-Time su Windows ordinario
Organizziamo come stabilizzare l'elaborazione periodica e a bassa latenza su Windows ordinario, coprendo la risoluzione del timer, le priorità, le impostazio...