PartyNetwork::RemoveLocalUser

ローカル ユーザーをネットワークから削除するための非同期操作をキューに入れます。

構文

PartyError RemoveLocalUser(  
    const PartyLocalUser* localUser,  
    void* asyncIdentifier  
)  

パラメーター

localUser PartyLocalUser*

ネットワークから削除するローカル ユーザー。

asyncIdentifier void*
オプション

完了状態の変更をこの呼び出しに関連付けるために使用できる、オプションの、アプリによって定義されたポインター サイズのコンテキスト値。

戻り値

PartyError

ローカル ユーザーを削除する非同期操作が開始された場合は c_partyErrorSuccess、それ以外の場合はエラー コードが返されます。 このメソッドが失敗した場合、関連する状態の変更は発生しません。 人間が読める形式のエラー コードは、PartyManager::GetErrorMessage() を介して取得できます。

解説

非同期操作が完了すると、ユーザーはネットワークに対して認証されたと見なされなくなります。 完了は、PartyRemoveLocalUserCompletedStateChange によって示されます。 非同期操作は常に成功し、PartyRemoveLocalUserCompletedStateChange の前に PartyLocalUserRemovedStateChange が常に指定されます。 操作が正常に完了する前に、そのユーザーに関連付けられているすべてのエンドポイント (それぞれ PartyEndpointDestroyedStateChangeで示されます) が破棄され、そのユーザーに関連付けられているすべてのチャット コントロールがネットワークから切断されます (それぞれ PartyChatControlLeftNetworkStateChange によって示されます)。

すべてのローカル ユーザーがネットワークから削除されると、デバイスは認証されたと見なされなくなります。 すべてのエンドポイントは破棄され、すべてのリモート デバイスは、ローカル デバイスに表示されなくなったため、ネットワークから出て行くように見えます。 同様に、すべてのリモート デバイスは、ローカル デバイスがネットワークを離れたと見なします。 デバイスはすぐに切断されず、AuthenticateLocalUser() への新しい呼び出しによって再び認証されます。 ただし、認証されたユーザーがいないネットワークに接続することは、移行期間以外では役に立つ状態ではないため、パーティー ライブラリにより、認証されていないデバイスは 1 分以上自動的に切断されます。

このメソッドの前回の呼び出しにより、指定された localUser が既にネットワークから削除されている場合、このメソッドは失敗します。

要件

ヘッダー: Party.h

関連項目

PartyNetwork
PartyRemoveLocalUserCompletedStateChange
PartyEndpointDestroyedStateChange
PartyChatControlLeftNetworkStateChange
PartyNetwork::AuthenticateLocalUser
PartyNetwork::GetLocalUsers