共用方式為


網路模組中斷連結

當用戶端模組或提供者模組與網路模組註冊器 (NMR) 時,連結的網路模組會彼此中斷連結。 用戶端模組會藉由呼叫 NmrDeregisterClient 函式,並使用 NMR 取消註冊提供者模組,方法是呼叫 NmrDeregisterProvider 函 式來取消註冊 NMR。 下圖說明起始取消註冊的網路模組。

顯示起始取消註冊程式之網路模組的圖表。

當任一個網路模組向 NMR 取消註冊時,NMR 會呼叫用戶端模組的 ClientDetachProvider 回呼函式,以及提供者模組的 ProviderDetachClient 回 呼函式來起始中斷連結網路模組。 下圖說明起始卸離的 NMR。

此圖顯示起始網路模組中斷連結的 NMR。

如果用戶端模組無法立即從提供者模組中斷連結,它會在完成從提供者模組中斷連結本身之後,呼叫 NmrClientDetachProviderComplete 函式。 同樣地,如果提供者模組無法立即從用戶端模組中斷連結,它會在完成從用戶端模組中斷連結本身之後,呼叫 NmrProviderDetachClientComplete 函式。 下圖說明完成中斷連結的網路模組。

描繪完成卸離程式之網路模組的圖表。

在用戶端模組和提供者模組彼此完成中斷連結之後,NMR 會呼叫用戶端模組的 ClientCleanupBindingCoNtext 回呼函式和提供者模組的 ProviderCleanupBindingCoNtext 回呼函式,讓網路模組可以清除附件的個別系結內容。 下圖說明 NMR 起始清除。

顯示 NMR 在網路模組中斷連結之後起始清除的圖表。

如果用戶端模組已向 NMR 取消註冊,則用戶端模組的取消註冊不會完成,直到用戶端模組與先前連結的所有提供者模組完全中斷連結,而且所有這些提供者模組都已完全與用戶端模組中斷連結。 用戶端模組會呼叫 NmrWaitForClientDeregisterComplete 函式,等候取消註冊完成。 同樣地,如果提供者模組已向 NMR 取消註冊,則提供者模組的取消註冊不會完成,直到提供者模組與先前連結的所有用戶端模組完全中斷連結,而且所有這些用戶端模組都已完全與提供者模組中斷連結。 提供者模組會呼叫 NmrWaitForProviderDeregisterComplete 函式,等候取消註冊完成。 下圖說明等待取消註冊完成的網路模組。

此圖顯示等待取消註冊完成的網路模組。