丢弃任务
可以在运行时丢弃任务。您不能运行已丢弃的任务。
Stop() 方法
Stop()
方法移除 NetLogic 父节点时,每个异步任务都将自动结束。不过,推荐通过调用
Dispose()
方法来丢弃 Stop()
方法内部的任务,如以下示例所示。public override void Stop() { myTask.Dispose(); }
重要提示:
对异步任务调用
Dispose()
方法将阻止该任务,直到该任务运行的代码将控制权限返回给调用方(通过控制任务状态或完成任务)。示例
以下显示如何创建、运行和丢弃异步任务。
public override void Start() { myTask = new PeriodicTask(IncrementVariable, 1000, LogicObject) myTask.Start(); } public override void Stop() { myTask.Dispose(); } private void IncrementVariable() { variable1.Value = variable1.Value + 1; } private PeriodicTask myTask;
该示例包括:
- 在 NetLogic 中包含的 C# 类中定义专用实例变量 (private PeriodicTask myTask;)。小贴士: 根据要创建的任务类型,此变量的类必须为PeriodicTask、DelayedTask或LongRunningTask
- 定义必须由任务运行的方法 (IncrementVariable())。
- 创建任务。在 NetLogic 中包含的 C# 类中的Start()方法内部,使用类构造函数 (PeriodicTask) 初始化专用实例变量 (myTask)。小贴士: 构造函数需要各种参数,具体取决于它所属的类。请参见异步任务。
- 在运行时,在 NetLogic 初始化后立即执行该任务。在 NetLogic 中包含的 C# 类中的Start()方法内部,对任务 (myTask.Start()) 调用Start()方法。
- 通过调用Dispose()方法来丢弃Stop()方法中的任务。
提供反馈