ISynchronizeInvoke 介面
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
提供同步或非同步執行委派 (Delegate) 的方式。
public interface class ISynchronizeInvoke
public interface ISynchronizeInvoke
type ISynchronizeInvoke = interface
Public Interface ISynchronizeInvoke
- 衍生
備註
介面 ISynchronizeInvoke 提供對象之間有關發生事件之同步和異步的通訊。 實作此介面的物件可以接收事件已發生的通知,而且可以回應事件的相關查詢。 如此一來,用戶端就可以在提交相依於第一個要求的後續要求之前,先確定已處理一個要求。
類別 ISynchronizeInvoke 提供兩種方式來叫用進程:
使用 BeginInvoke 方法,以異步方式。 BeginInvoke 啟動進程,然後立即傳回。 使用 EndInvoke 等候程式完成為止 BeginInvoke 。
使用 方法,以同步方式 Invoke 。 Invoke 啟動進程,等到程式完成,然後傳回。 當控件的主線程與呼叫線程不同時,請使用 Invoke ,以封送處理對適當線程的呼叫。
注意
套HostProtectionAttribute用至這個類別的屬性具有下列Resources屬性值: | SynchronizationExternalThreading。 HostProtectionAttribute 不會影響桌面應用程式 (這些應用程式的啟動方式一般都是按兩下圖示、輸入命令或在瀏覽器輸入 URL)。 如需詳細資訊,請參閱 HostProtectionAttribute 類別或 SQL Server 程式設計與主機保護屬性。
屬性
InvokeRequired |
取得值,表示當呼叫實作這個介面的物件時,呼叫端是否必須呼叫 Invoke(Delegate, Object[])。 |
方法
BeginInvoke(Delegate, Object[]) |
在建立此物件的執行緒上以非同步方式執行委派。 |
EndInvoke(IAsyncResult) |
等候直到由呼叫 BeginInvoke(Delegate, Object[]) 所啟動的處理序完成,然後傳回處理序所產生的值。 |
Invoke(Delegate, Object[]) |
在建立此物件的執行緒上同步執行委派,並封送處理對建立執行緒的呼叫。 |