PartyManager::DoWork
threadId
に関連付けられている処理タスクを同期的に実行します。
構文
PartyError DoWork(
PartyThreadId threadId
)
パラメーター
threadId
PartyThreadId
パーティー ライブラリの内部処理タスクの上位分類です。
戻り値
PartyError
呼び出しが成功した場合は c_partyErrorSuccess
、それ以外の場合はエラー コードになります。 人間が判読できる形式のエラー コードは、GetErrorMessage() を介して取得できます。
解説
SetWorkMode() の呼び出しを介して threadId
の作業モードが以前に PartyWorkMode::Manual に設定されていない場合、このメソッドは失敗し、エラーを返します。 さらに、Windows、Microsoft Game Core の各バージョンのライブラリでは、threadId
が PartyThreadId::Networking の時に、このメソッドを呼び出すタイトル スレッドが COM マルチスレッド アパートメントに存在しない場合、このメソッドは失敗し、エラーを返します。
既定では、パーティー ライブラリは threadId
に関連付けられている処理タスクを内部で管理します。 ただし、threadId
の作業モードが、SetWorkMode() の呼び出しによって partyWorkMode::Manual として構成されている場合、タイトルは定期的にこのメソッドを呼び出して処理タスクを実行する必要があります。
threadId
に関連付けられている処理タスクは、このメソッドを呼び出す周波数を指定します。
PartyThreadId::Audio に関連付けられている処理タスクは 40 ミリ秒ごとに実行する必要がありますが、PartyThreadId::Networking に関連付けられている処理タスクは 50 ミリ秒 から 100 ミリ秒ごとに実行する必要があります。 内部的には、処理タスクはタイミングの小さな変動を処理しようとしますが、タイミングが予想される内容 (例: オーディオのスタッター、ネットワーク状態の同期解除など) から大幅に外れた場合、問題が発生します。
タスクの種類とタイミングの予測の処理の詳細については、「PartyThreadId」を参照してください。
要件
ヘッダー: Party.h
関連項目
PartyManager
PartyManager::SetWorkMode
PartyManager::GetWorkMode