https://github.com/baba-s/kogane-unity-lib-task
順番にコールバックを実行したり、同時にコールバックを実行したりできるクラス
https://github.com/baba-s/kogane-unity-lib-task
unity unity-script unity-scripts unity3d
Last synced: 1 day ago
JSON representation
順番にコールバックを実行したり、同時にコールバックを実行したりできるクラス
- Host: GitHub
- URL: https://github.com/baba-s/kogane-unity-lib-task
- Owner: baba-s
- License: mit
- Created: 2019-03-25T06:39:26.000Z (over 6 years ago)
- Default Branch: master
- Last Pushed: 2019-04-29T11:45:29.000Z (about 6 years ago)
- Last Synced: 2025-04-07T03:14:13.528Z (3 months ago)
- Topics: unity, unity-script, unity-scripts, unity3d
- Language: C#
- Homepage:
- Size: 27.3 KB
- Stars: 5
- Watchers: 3
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# kogane-unity-lib-task
順番にコールバックを実行したり、同時にコールバックを実行したりできるクラス
[](https://github.com/baba-s/kogane-unity-lib-task/releases)
[](https://github.com/baba-s/kogane-unity-lib-task/releases)


[](https://github.com/baba-s/kogane-unity-lib-task/blob/master/LICENSE)## バージョン
- Unity 2018.3.9f1
## 順番にコールバックを実行
### 基本
```cs
var task = new SingleTask
{
onEnded => Hoge1( onEnded ),
onEnded => Hoge2( onEnded ),
onEnded => Hoge3( onEnded ),
};
task.Play( () => Debug.Log( "Complete" ) );
```### 各コールバックの開始、終了時にログ出力
```cs
var task = new SingleTaskWithLog
{
{ "Hoge1", onEnded => Hoge1( onEnded ) },
{ "Hoge2", onEnded => Hoge2( onEnded ) },
{ "Hoge3", onEnded => Hoge3( onEnded ) },
};
task.Play( "Task", () => Debug.Log( "Complete" ) );
```### 各コールバックの開始、終了時にログ出力(経過時間付き)
```cs
var task = new SingleTaskWithTimeLog
{
{ "Hoge1", onEnded => Hoge1( onEnded ) },
{ "Hoge2", onEnded => Hoge2( onEnded ) },
{ "Hoge3", onEnded => Hoge3( onEnded ) },
};
task.Play( "Task", () => Debug.Log( "Complete" ) );
```### 各コールバックの開始、終了時にログ出力(経過時間、GC 発生回数付き)
```cs
var task = new SingleTaskWithProfiler
{
{ "Hoge1", onEnded => Hoge1( onEnded ) },
{ "Hoge2", onEnded => Hoge2( onEnded ) },
{ "Hoge3", onEnded => Hoge3( onEnded ) },
};
task.Play( "Task", () => Debug.Log( "Complete" ) );
```## 同時にコールバックを実行
### 基本
```cs
var task = new MultiTask
{
onEnded => Hoge1( onEnded ),
onEnded => Hoge2( onEnded ),
onEnded => Hoge3( onEnded ),
};
task.Play( () => Debug.Log( "Complete" ) );
```### 各コールバックの開始、終了時にログ出力
```cs
var task = new MultiTaskWithLog
{
{ "Hoge1", onEnded => Hoge1( onEnded ) },
{ "Hoge2", onEnded => Hoge2( onEnded ) },
{ "Hoge3", onEnded => Hoge3( onEnded ) },
};
task.Play( "Task", () => Debug.Log( "Complete" ) );
```### 各コールバックの開始、終了時にログ出力(経過時間付き)
```cs
var task = new MultiTaskWithTimeLog
{
{ "Hoge1", onEnded => Hoge1( onEnded ) },
{ "Hoge2", onEnded => Hoge2( onEnded ) },
{ "Hoge3", onEnded => Hoge3( onEnded ) },
};
task.Play( "Task", () => Debug.Log( "Complete" ) );
```### 各コールバックの開始、終了時にログ出力(経過時間、GC 発生回数付き)
```cs
var task = new MultiTaskWithProfiler
{
{ "Hoge1", onEnded => Hoge1( onEnded ) },
{ "Hoge2", onEnded => Hoge2( onEnded ) },
{ "Hoge3", onEnded => Hoge3( onEnded ) },
};
task.Play( "Task", () => Debug.Log( "Complete" ) );
```## ログ出力を有効化
ログ出力を有効化したい場合は `ENABLE_DEBUG_LOG` のシンボルを追加する必要があります