Sdílet prostřednictvím


ISynchronizeInvoke Rozhraní

Definice

Poskytuje způsob, jak synchronně nebo asynchronně spustit delegáta.

public interface class ISynchronizeInvoke
public interface ISynchronizeInvoke
type ISynchronizeInvoke = interface
Public Interface ISynchronizeInvoke
Odvozené

Poznámky

Rozhraní ISynchronizeInvoke poskytuje synchronní a asynchronní komunikaci mezi objekty o výskytu události. Objekty, které implementují toto rozhraní, mohou obdržet oznámení, že došlo k události, a mohou reagovat na dotazy týkající se události. Klienti tak můžou zajistit, aby jeden požadavek byl zpracován před odesláním dalšího požadavku, který závisí na dokončení prvního požadavku.

Třída ISynchronizeInvoke poskytuje dva způsoby volání procesu:

  1. Asynchronně pomocí BeginInvoke metody. BeginInvoke spustí proces a vrátí okamžitě. Slouží EndInvoke k čekání na dokončení BeginInvoke procesu.

  2. Synchronně pomocí Invoke metody. Invoke spustí proces, počká, až se dokončí, a vrátí se. Používá Invoke se, když se hlavní vlákno ovládacího prvku liší od volajícího vlákna pro zařazení volání do správného vlákna.

Poznámka:

Atribut HostProtectionAttribute použitý pro tuto třídu má následující Resources hodnotu vlastnosti: | SynchronizationExternalThreading . Nemá HostProtectionAttribute vliv na desktopové aplikace (které se obvykle spouští poklikáním na ikonu, zadáním příkazu nebo zadáním adresy URL v prohlížeči). Další informace naleznete v HostProtectionAttribute tématu třídy nebo programování SYSTÉMU SQL Server a atributy ochrany hostitele.

Vlastnosti

Name Description
InvokeRequired

Získá hodnotu určující, zda volající musí volat Invoke(Delegate, Object[]) při volání objektu, který implementuje toto rozhraní.

Metody

Name Description
BeginInvoke(Delegate, Object[])

Asynchronně spustí delegáta ve vlákně, které vytvořilo tento objekt.

EndInvoke(IAsyncResult)

Počká, až se proces spustí voláním BeginInvoke(Delegate, Object[]) , a vrátí hodnotu vygenerovanou procesem.

Invoke(Delegate, Object[])

Synchronně spustí delegáta ve vlákně, které vytvořil tento objekt, a zařadí volání do vytvářeného vlákna.

Platí pro

Viz také