跳至主要内容
版本: 2.1.1

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更新()

公共财产

名称
boolIsMainThread

其他继承成员

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;