delegate void DelegateTest();
DelegateTest delTest;
Jaka jest różnica między wywołaniem delTest.Invoke()
i delTest()
? Oba będą wykonywać delegata w bieżącym wątku, prawda?Różnica między Delegate.Invoke i Delegata()
delegate void DelegateTest();
DelegateTest delTest;
Jaka jest różnica między wywołaniem delTest.Invoke()
i delTest()
? Oba będą wykonywać delegata w bieżącym wątku, prawda?Różnica między Delegate.Invoke i Delegata()
Formularz delTest()
jest pomocnikiem kompilatora, pod którym jest naprawdę połączenie z Invoke()
.
Zgadza się. Oba mają dokładnie taki sam wynik.
Zakładając, że prawidłowo zainicjowano delTest
.
Jeśli 'delTest' ma wartość' null', obie składnie ponownie prowadzą do tego samego wyniku (co w tej sytuacji wywołuje 'NullReferenceException' wyrzucony z wiersza, w którym wykonywane jest wywołanie). –
richard, prawie musiałem zabrać głos, ponieważ błędnie zapisałeś "rotorua" w swoim profilu;) –
@Rob: Ups, literówka, teraz poprawiona. – Richard
@Richard: Co robi funkcja Invoke() wewnętrznie. Gdzie dokładnie znajduje się ta metoda Invoke. Nie znalazłem w pliku metadanych Delegata, a także MultiCastDelegate. – Novice