delegate void DelegateTest();
DelegateTest delTest;
Qual'è la differenza tra chiamando delTest.Invoke()
e delTest()
? Entrambi eseguiranno il delegato sul thread corrente, giusto?Differenza tra Delegate.Invoke e delegato()
delegate void DelegateTest();
DelegateTest delTest;
Qual'è la differenza tra chiamando delTest.Invoke()
e delTest()
? Entrambi eseguiranno il delegato sul thread corrente, giusto?Differenza tra Delegate.Invoke e delegato()
Il modulo delTest()
è un helper del compilatore, al di sotto è in realtà una chiamata a Invoke()
.
Questo è corretto. Entrambi hanno lo stesso identico risultato.
Dato che è stato correttamente inizializzato delTest
ovviamente.
Se 'delTest' è' null', entrambe le sintassi portano nuovamente allo stesso risultato (che è in tale situazione una 'NullReferenceException' generata dalla riga in cui viene tentata l'invocazione). –
richard, ho quasi dovuto togliere il tuo voto perché hai sbagliato "rotorua" nel tuo profilo;) –
@Rob: Oops, typo, ora corretto. – Richard
@Richard: cosa fa Invoke() internamente. Dove risiede esattamente questo metodo Invoke. Non ho trovato nel file di metadati di Delegate e MultiCastDelegate. – Novice