GameThreadの処理を別のスレッド(コア)に移す

ご返答ありがとうございます。

関数の動作に関しては理解いたしました。

GameThreadでの処理をTaskGraphに移行したものを継続して最後の
TickGroupまで実行するということは今までに検証されたことが無いため、

また、上記の注意点に関しても承知しました。

一応こちらの方でも、実際にテスト用のアクターを作成して調査した所、DoTask()の処理を非常に大きく(600ms以上)した場合、
FFrameEndSync::Sync() 内の
FRenderCommandFance()::Wait()内の
GameThreadWaitForTask()関数内で
処理終了待ちを行い、正常に動作をしていました。

また、タスククラスの GetDesiredThread() 関数の返り値を ENamedThreads::AnyBackgroundThreadNormalTask にする事で、TaskGraphNP 0-3 に分散されていたタスクが、TaskGraphBP 8-11スレッドで動作するようになり、この場合は上記の最後の処理終了待ちを行わないで動作をし、停止が起きました。

エンジンの実装としては、TaskGraphNP 0-3のスレッドは終了待ちを行い、TaskGraphBP 8-11では行わない、というような設計で実装されている様に思えます。