Windows LUA 非同步支援

非同步動詞補全會在發送初始動詞後立即返回(在結果尚未收到之前),因此應用程式可以繼續執行其他程序。 若程式發出動詞且在操作完成前不重新取得控制權,則無法執行其他操作。 這種同步操作稱為阻塞,並不適合設計用於處理多重用戶端請求的伺服器應用程式。

邏輯單元應用(LUA)設計上是非同步的,並使用信號量來傳送通知訊息。 信號量在 Windows Server 上運作良好。 Windows LUA 提供以下功能來發布「請求單元介面(RUI)」與「會話層級介面(SLI)」的動詞:

  • RUI

  • SLI

  • WinRUI

  • WinSLI

    WinRUI 與 WinSLI 為所有基於 Windows 的 RUI 與 SLI 動詞提供非同步訊息通知,而 RUI 與 SLI 則支援事件通知。 Windows 版本 3。x 應用程式使用 WinRUI 和 WinSLI 進行非同步訊息通知。

    非同步支援允許你根據視窗句柄收到操作完成的通知。 你可以使用 RegisterWindowsMessage 函式註冊視窗代碼,字串為「WinRUI」或「WinSLI」。 接著你使用 WinRUI 或 WINSLI 函式發送動詞,並傳遞視窗句柄。 當 LUA 動詞對話結束時,會將訊息貼入你通過的視窗帳柄,通知你動詞已完成。

    Windows LUA 所需的其他 Windows 擴充功能僅用於初始化(WinRUIStartup 或 WinSLIStartup)及終止(WinRUICleanup 或 WinSLICleanup)。 根據你的應用程式,其他 Windows 擴充功能可能有用,但並非必須。 所有 Windows LUA 動詞、例程與擴充的完整描述,請參閱 LUA RUI 動詞、 LUA SLI 動詞及 Windows 環境的 LUA 擴充功能。