PROFESSIONAL GAME CREATOR SCHOOL G学院 用語集

OFFICIAL SITEへ戻る

IEnumerator

 IEnumeratorとは、Unityプログラミングで用いられる非同期処理を行うために用いるデータ型の一種です。
 非同期処理とは、単一のタスクのみを行う同期処理とは異なり、並列で別々に複数のタスクを処理することを指します。コルーチンと言われる、任意の場所で処理をストップ・再開できる機能があります。これを用いることで同時に複数の処理を行うことができます。IEnumeratorとは、一言でまとめればこのコルーチンを使用するために用いるものです。
 以下の様に記述して記載します。

Public IEnumerator Test(int num){
Debut.Log(“Start CoroutineでTest関数が実行されました。”);
//~以下コルーチンの処理(大抵はループ処理です)
yield return new WaitForSeconds(指定秒数);
}
//任意の場所で以下のコードを実行すると、そこでの処理と並列でTest関数が処理されます。
StartCoroutine(“Test”, 1);
//~以下本来の処理

Test関数内のyield returnは、そこで処理を中断し、指定数秒間処理をメインのタスクに戻すという機能があります。この戻り値すなわち機能を使うために、コルーチンデータ型として、IEnumeratorが用いられます。上記の例では並列の効果は分かりにくいですが、本来の処理部分とTestコルーチン内の処理部分で複雑な処理を行うとそれぞれ平行して処理を進めます。

用語集一覧へ戻る