共用方式為


Windows 環境的 APPC 擴充功能

本節說明允許非同步通訊的 Windows 進階程式對程式通訊 (APPC) API 延伸模組。 當函式在要求完成之前傳回時,就會發生非同步通訊。 應用程式稍後會在要求完成時收到通知。

在 Microsoft® Windows® 下,有三種方法可供使用 APPC API 進行非同步通訊:

  • 使用視窗控制碼張貼訊息。

  • 等候 Win32® 事件。

  • 使用 Win32 I/O 完成埠。

    第一個方法會使用張貼至視窗控制碼的訊息,以通知應用程式動詞完成。 Microsoft Windows 3.x 支援使用視窗控制碼和訊息的這個方法。 每個 APPC 應用程式都有一個這類視窗,與交談數目無關。 每個 APPC 交談隨時都可以有一個非同步動詞未處理。 當動詞完成時,張貼至視窗會採用原始呼叫所傳回的非同步工作控制碼參數,以及已完成之動詞控制項區塊的指標,其中包含動詞的傳回碼。

    本節 (WinAsyncAPPC) 使用視窗控制碼和訊息張貼的擴充功能是針對從 3.0 版到最新版 Windows 的所有 Microsoft Windows 實作和版本所設計。 它們在 16 位 Windows 作業環境中提供 Windows 程式設計與最佳應用程式效能的相容性。

    支援使用 Win32 事件進行通知的第二種方法。 本節所述的使用 Win32 事件的擴充功能 (WinAsyncAPPCEx) 只能在 Windows 上運作,並在 32 位 Windows 作業環境中提供最佳的應用程式效能。 如果事件已向交談註冊,則應用程式可以呼叫 Win32 WaitForSingleObjectWaitForMultipleObjects 函式來等候完成動詞的通知。

    Windows 支援使用 Win32 I/O 完成埠進行通知的第三種方法。 本節所述的使用 I/O 完成埠的擴充功能 (WinAsyncAPPCIOCP) 只能在 Windows 上運作,並在 32 位 Windows 作業環境中提供最佳的應用程式效能。 如果已使用 CreateIoCompletionPort建立 I/O 完成埠,則應用程式可以呼叫 Win32 GetQueuedCompletionStatus 函式,等候收到動詞完成的通知。

    Windows APPC 允許多執行緒的 Windows 進程。 進程包含一或多個執行的執行緒。 本檔中所有線程的參考都是指多執行緒 Windows 環境中的實際執行緒。

    本節提供每個擴充功能的定義、語法、傳回和使用函式的備註。

本節內容