Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Recensione vivo X300 Pro: è ancora lui il re della fotografia mobile, peccato per la batteria
Recensione vivo X300 Pro: è ancora lui il re della fotografia mobile, peccato per la batteria
vivo X300 Pro rappresenta un'evoluzione misurata della serie fotografica del produttore cinese, con un sistema di fotocamere migliorato, chipset Dimensity 9500 di ultima generazione e l'arrivo dell'interfaccia OriginOS 6 anche sui modelli internazionali. La scelta di limitare la batteria a 5.440mAh nel mercato europeo, rispetto ai 6.510mAh disponibili altrove, fa storcere un po' il naso
Lenovo Legion Go 2: Ryzen Z2 Extreme e OLED 8,8'' per spingere gli handheld gaming PC al massimo
Lenovo Legion Go 2: Ryzen Z2 Extreme e OLED 8,8'' per spingere gli handheld gaming PC al massimo
Lenovo Legion Go 2 è la nuova handheld PC gaming con processore AMD Ryzen Z2 Extreme (8 core Zen 5/5c, GPU RDNA 3.5 16 CU) e schermo OLED 8,8" 1920x1200 144Hz. È dotata anche di controller rimovibili TrueStrike con joystick Hall effect e una batteria da 74Wh. Rispetto al dispositivo che l'ha preceduta, migliora ergonomia e prestazioni a basse risoluzioni, ma pesa 920g e costa 1.299€ nella configurazione con 32GB RAM/1TB SSD e Z2 Extreme
AWS re:Invent 2025: inizia l'era dell'AI-as-a-Service con al centro gli agenti
AWS re:Invent 2025: inizia l'era dell'AI-as-a-Service con al centro gli agenti
A re:Invent 2025, AWS mostra un’evoluzione profonda della propria strategia: l’IA diventa una piattaforma di servizi sempre più pronta all’uso, con agenti e modelli preconfigurati che accelerano lo sviluppo, mentre il cloud resta la base imprescindibile per governare dati, complessità e lock-in in uno scenario sempre più orientato all’hybrid cloud
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 01-02-2010, 22:01   #1
carosene
Member
 
Iscritto dal: Jan 2004
Messaggi: 173
[.NET FRAMEWORK] Timer e thread

Mettiamo il caso che si abbia una semplice applicazione desktop che all'avvio lancia un timer il quale invoca ciclicamente un metodo. Cosa accade quando scatta l'evento timer e l'applicazione è impegnata in un'altra operazione?
  • Il metodo timer viene eseguito su un altro thread?
  • Il metodo timer viene invocato non appena l'applicazione si "libera"?

Grazie in anticipo...
carosene è offline   Rispondi citando il messaggio o parte di esso
Old 02-02-2010, 00:03   #2
gugoXX
Senior Member
 
L'Avatar di gugoXX
 
Iscritto dal: May 2004
Città: Londra (Torino)
Messaggi: 3692
Risposta A: Il codice in esecuzione dal Timer viene eseguito in un altro thread.
E infatti supponendo che il contesto chiamante sia il thread di una finestra che il codice del Timer voglia accedere a qualche elemento grafico della finestra, occorre sincronizzare. (sotto C# almeno, se non sbaglio sotto VB e' di default sincronizzato, e quindi leggerissimamente piu' lento quando non dovesse servire)
__________________
Se pensi che il tuo codice sia troppo complesso da capire senza commenti, e' segno che molto probabilmente il tuo codice e' semplicemente mal scritto.
E se pensi di avere bisogno di un nuovo commento, significa che ti manca almeno un test.

Ultima modifica di gugoXX : 02-02-2010 alle 00:05.
gugoXX è offline   Rispondi citando il messaggio o parte di esso
Old 02-02-2010, 00:25   #3
carosene
Member
 
Iscritto dal: Jan 2004
Messaggi: 173
In C# ho fatto la seguente prova:

Codice:
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void Form1_Load(object sender, EventArgs e)
        {
            timer1.Interval = 5000;
            timer1.Start();
        }

        private void button1_Click(object sender, EventArgs e)
        {
            Thread.Sleep(10000);
            MessageBox.Show("Evento pulsante");
        }

        private void timer1_Tick(object sender, EventArgs e)
        {
            MessageBox.Show("Evento timer");
        }
    }
Avviando il Form e premendo subito il pulsante viene visualizzato prima il messaggio del pulsante e poi quello del timer, quindi mi verrebbe da dire RISPOSTA B. Giusto?
carosene è offline   Rispondi citando il messaggio o parte di esso
Old 02-02-2010, 00:52   #4
gugoXX
Senior Member
 
L'Avatar di gugoXX
 
Iscritto dal: May 2004
Città: Londra (Torino)
Messaggi: 3692
Ciao. Dalla sintassi usata direi che stai usando un
System.Windows.Form.Timer
Oggetto creato apposta per evitare allo sviluppatore le sincronizzazioni con il thread della form chiamante (e per questo, analogamente a VB, leggerissimamente piu' lento qualora non ti servisse sincronizzare)
Cio' significa che per "contare", questo Thread fa uso di un thread a se stante, mentre per eseguire la callback si risincronizza con la finestra su cui e' dichiarato
(E pertanto il codice potra' essere eseguito solo qualora la finestra fosse idle)

Quando si parla generalmente di Thread, non per forza legati ad una Form, si usa invece un
System.Threading.Timer
piu' leggero e senza "Dispatcher" interno per le sincronizzazioni.


Il primo avrebbe quindi risposta B
Il secondo avrebbe risposta A
__________________
Se pensi che il tuo codice sia troppo complesso da capire senza commenti, e' segno che molto probabilmente il tuo codice e' semplicemente mal scritto.
E se pensi di avere bisogno di un nuovo commento, significa che ti manca almeno un test.
gugoXX è offline   Rispondi citando il messaggio o parte di esso
Old 02-02-2010, 01:00   #5
carosene
Member
 
Iscritto dal: Jan 2004
Messaggi: 173
Mille grazie
carosene è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Recensione vivo X300 Pro: è ancora lui il re della fotografia mobile, peccato per la batteria Recensione vivo X300 Pro: è ancora lui il...
Lenovo Legion Go 2: Ryzen Z2 Extreme e OLED 8,8'' per spingere gli handheld gaming PC al massimo Lenovo Legion Go 2: Ryzen Z2 Extreme e OLED 8,8'...
AWS re:Invent 2025: inizia l'era dell'AI-as-a-Service con al centro gli agenti AWS re:Invent 2025: inizia l'era dell'AI-as-a-Se...
Cos'è la bolla dell'IA e perché se ne parla Cos'è la bolla dell'IA e perché se...
BOOX Palma 2 Pro in prova: l'e-reader diventa a colori, e davvero tascabile BOOX Palma 2 Pro in prova: l'e-reader diventa a ...
Il seguito di Cyberpunk 2077 si farà att...
Dov'è finita la parola "sost...
Gli agenti IA saranno il fulcro delle az...
Data center: un mercato da 30 miliardi d...
Licenziato e sostituito dall'AI? In Cina...
HONOR Magic 8 Pro: abbiamo tra le mani i...
OPPO ha appena svelato un tablet di fas...
Peaky Blinders: The Immortal Man, Netfli...
iPhone Air: la nuova generazione potrebb...
Il Galaxy S26 Ultra avrà una batteria da...
EV Clinic cambia un settore: ora produce...
OnePlus ha anticipato l'arrivo della ver...
Amazon ha sospeso la sperimentazione del...
Mark Hamill sarà per sempre Luke ...
Amazon rilancia i bestseller fra cui un ...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 19:34.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Served by www3v