本文整理汇总了C#中Composite.Stop方法的典型用法代码示例。如果您正苦于以下问题:C# Composite.Stop方法的具体用法?C# Composite.Stop怎么用?C# Composite.Stop使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Composite
的用法示例。
在下文中一共展示了Composite.Stop方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: Tick
private static void Tick(Composite tree)
{
if (tree.LastStatus != RunStatus.Running)
tree.Start(null);
if (tree.Tick(null) != RunStatus.Running)
tree.Stop(null);
}
示例2: WalkTree
private static void WalkTree(Composite root, object rootContext = null)
{
// This function is meant as an EXAMPLE ONLY!
// It is not the best way to handle walking the tree, but will suffice for simple usages.
// Start must always be called first. Typically the root behavior will have a null context. Change if needed.
root.Start(rootContext);
// Run the tree forever...
while (true)
{
try
{
root.Tick(null);
}
catch (ThreadAbortException)
{
// Assuming we wanted this, make the tree stop walking, regardless of where it is.
break;
}
catch (Exception ex)
{
Console.WriteLine(ex);
// Handle this exception, either stop the tree, or just eat it and continue.
}
// If we're still running the current composite, then we don't need to reset, we want the tree to pick up
// where it left off last tick.
if (root.LastStatus != RunStatus.Running)
{
// Reset the tree, and begin the execution all over...
root.Stop(rootContext);
root.Start(rootContext);
}
// Change/remove, do whatever you want. This is an example remember!
Thread.Sleep(10);
}
root.Stop(rootContext);
}