Haply::Inverse::Unity::EventDispatcher
线程安全类,用于保存下一个更新方法要执行的操作队列。 更多
Inherits from Haply.Inverse.Unity.Utilities.Singleton< EventDispatcher >, MonoBehaviour
公共职能
名称 | |
---|---|
空白 | Enqueue(IEnumerator action) 锁定队列并将 IEnumerator 添加到队列中。 |
空白 | Enqueue(Action 动作) 锁定队列并将动作添加到队列中。 |
空白 | Enqueue(UnityEvent action) 锁定队列并将动作添加到队列中。 |
空白 | Enqueue< T >(Action< T > action, T arg) Locks the queue and adds the Action (with a parameter T) to the queue. |
空白 | Enqueue< T >(UnityEvent< T > action, T arg) Locks the queue and adds the Action (with a parameter T) to the queue. |
空白 | Enqueue< T0, T1 >(Action< T0, T1 > action, T0 arg0, T1 arg1) Locks the queue and adds the Action (with two parameters T0 and T1) to the queue. |
空白 | Enqueue< T0, T1 >(UnityEvent< T0, T1 > action, T0 arg0, T1 arg1) Locks the queue and adds the UnityEvent (with two parameters T0 and T1) to the queue. |
空白 | Enqueue< T0, T1, T2 >(Action< T0, T1, T2 > action, T0 arg0, T1 arg1, T2 arg2) Locks the queue and adds the Action (with tree parameters T0, T1 and T2) to the queue. |
空白 | Enqueue< T0, T1, T2 >(UnityEvent< T0, T1, T2 > action, T0 arg0, T1 arg1, T2 arg2) Locks the queue and adds the UnityEvent (with tree parameters T0, T1 and T2) to the queue. |
任务 | EnqueueAsync(Action 动作) 锁定队列并将动作添加到队列中,当动作完成时返回一个已完成的任务。 |
任务 | EnqueueAsync(UnityEvent action) 锁定队列并将动作添加到队列中,当动作完成时返回一个任务。 |
任务 | EnqueueAsync< T >(Action< T > action, T arg) Locks the queue and adds the Action to the queue, returning a Task which is completed when the action completes. |
任务 | EnqueueAsync< T >(UnityEvent< T > action, T arg) Locks the queue and adds the Action to the queue, returning a Task which is completed when the action completes. |
受保护的功能
名称 | |
---|---|
虚拟覆盖 void | 醒来() |
虚拟覆盖 void | 更新() |
公共财产
名称 | |
---|---|
bool | IsMainThread |
其他继承成员
Public Functions inherited from Haply.Inverse.Unity.Utilities.Singleton< EventDispatcher >
名称 | |
---|---|
bool | 存在() |
Protected Functions inherited from Haply.Inverse.Unity.Utilities.Singleton< EventDispatcher >
名称 | |
---|---|
虚拟 void | 开启() |
虚拟 void | 禁用时() |
虚拟 void | 销毁时() |
虚拟 void | 在应用程序退出时() |
Public Properties inherited from Haply.Inverse.Unity.Utilities.Singleton< EventDispatcher >
名称 | |
---|---|
T | 实例 获取单例类的实例。 |
详细说明
class Haply::Inverse::Unity::EventDispatcher;
一个线程安全类,用于保存下一个更新方法要执行的操作队列。
它可用于调用主线程,以便在Unity 中进行 UI 操作。它是为与 FirebaseUnity插件结合使用而开发的,后者使用独立线程进行事件处理
作者:Pim de Witte (pimdewitte.com)作者:Pim de Witte (pimdewitte.com) 和撰稿人,https://github.com/PimDeWitte/UnityMainThreadDispatcher
公共函数文档
函数 Enqueue
void Enqueue(
IEnumerator action
)
锁定队列并将 IEnumerator 添加到队列中。
参数
- 动作IEnumerator 函数,该函数将在主线程中执行。
函数 Enqueue
void Enqueue(
Action action
)
锁定队列并将操作添加到队列中。
参数
- 动作函数,该函数将在主线程中执行。
函数 Enqueue
void Enqueue(
UnityEvent action
)
锁定队列并将操作添加到队列中。
参数
- 动作函数,该函数将在主线程中执行。
function Enqueue< T >
void Enqueue< T >(
Action< T > action,
T arg
)
锁定队列,并将操作(参数 T)添加到队列中。
参数
- 动作函数(要求参数类型为 T),该函数将在主线程中执行。
- 将 T 类型的参数arg传递给 action。
模板参数:
- T操作参数的类型。
function Enqueue< T >
void Enqueue< T >(
UnityEvent< T > action,
T arg
)
锁定队列,并将操作(参数 T)添加到队列中。
参数
- 动作函数(要求参数类型为 T),该函数将在主线程中执行。
- 将 T 类型的参数arg传递给 action。
模板参数:
- T操作参数的类型。
function Enqueue< T0, T1 >
void Enqueue< T0, T1 >(
Action< T0, T1 > action,
T0 arg0,
T1 arg1
)
锁定队列并向队列中添加操作(带两个参数 T0 和 T1)。
参数
- 动作函数(需要 T0 和 T1 类型的参数),该函数将由主线程执行。
- arg0传递给操作的 T0 类型参数。
- arg1参数,类型为 T1,用于传递给操作。
模板参数:
- T0操作的第一个参数的类型。
- T1操作的第二个参数的类型。
function Enqueue< T0, T1 >
void Enqueue< T0, T1 >(
UnityEvent< T0, T1 > action,
T0 arg0,
T1 arg1
)
锁定队列,并将 UnityEvent(带两个参数 T0 和 T1)添加到队列中。
参数
- 动作函数(需要 T0 和 T1 类型的参数),该函数将由主线程执行。
- arg0传递给操作的 T0 类型参数。
- arg1参数,类型为 T1,用于传递给操作。
模板参数:
- T0操作的第一个参数的类型。
- T1操作的第二个参数的类型。
function Enqueue< T0, T1, T2 >
void Enqueue< T0, T1, T2 >(
Action< T0, T1, T2 > action,
T0 arg0,
T1 arg1,
T2 arg2
)
锁定队列并向队列中添加操作(带树参数 T0、T1 和 T2)。
参数
- 动作函数(需要 T0、T1 和 T2 类型的参数),该函数将由主线程执行。
- arg0传递给操作的 T0 类型参数。
- arg1参数,类型为 T1,用于传递给操作。
- arg2参数,类型为 T2,用于传递给操作。
模板参数:
- T0操作的第一个参数的类型。
- T1操作的第二个参数的类型。
- T2操作的第三个参数的类型。
function Enqueue< T0, T1, T2 >
void Enqueue< T0, T1, T2 >(
UnityEvent< T0, T1, T2 > action,
T0 arg0,
T1 arg1,
T2 arg2
)
锁定队列,并将 UnityEvent(带树参数 T0、T1 和 T2)添加到队列中。
参数
- 动作函数(需要 T0、T1 和 T2 类型的参数),该函数将由主线程执行。
- arg0传递给操作的 T0 类型参数。
- arg1参数,类型为 T1,用于传递给操作。
- arg2参数,类型为 T2,用于传递给操作。
模板参数:
- T0操作的第一个参数的类型。
- T1操作的第二个参数的类型。
- T2操作的第三个参数的类型。
函数 EnqueueAsync
Task EnqueueAsync(
Action action
)
锁定队列并将操作添加到队列中,当操作完成时返回一个已完成的任务。
参数
- 动作函数,该函数将在主线程中执行。
返回:可等待直至操作完成的任务
函数 EnqueueAsync
Task EnqueueAsync(
UnityEvent action
)
锁定队列并将操作添加到队列中,当操作完成时返回一个已完成的任务。
参数
- 动作函数,该函数将在主线程中执行。
返回:可等待直至操作完成的任务
function EnqueueAsync< T >
Task EnqueueAsync< T >(
Action< T > action,
T arg
)
锁定队列并将操作添加到队列中,当操作完成时返回一个已完成的任务。
参数
- 动作函数,该函数将在主线程中执行。
- 将 T 类型的参数arg传递给 action。
模板参数:
- T操作参数的类型。
返回:可等待直至操作完成的任务
function EnqueueAsync< T >
Task EnqueueAsync< T >(
UnityEvent< T > action,
T arg
)
锁定队列并将操作添加到队列中,当操作完成时返回一个已完成的任务。
参数
- 动作函数,该函数将在主线程中执行。
- 将 T 类型的参数arg传递给 action。
模板参数:
- T操作参数的类型。
返回:可等待直至操作完成的任务
受保护函数文档
功能 唤醒
virtual override void Awake()
重实现:Haply::Inverse::Unity::Utilities::Singleton::Awake
功能更新
virtual override void Update()
重实现:Haply::Inverse::Unity::Utilities::Singleton::Update
公共财产文件
属性 IsMainThread
static bool IsMainThread;