当前位置: 首页>>代码示例>>C#>>正文


C# ICpu.StartWait方法代码示例

本文整理汇总了C#中ICpu.StartWait方法的典型用法代码示例。如果您正苦于以下问题:C# ICpu.StartWait方法的具体用法?C# ICpu.StartWait怎么用?C# ICpu.StartWait使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在ICpu的用法示例。


在下文中一共展示了ICpu.StartWait方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。

示例1: Execute

 public override void Execute(ICpu cpu)
 {
     // Wait model is: Because waits can occur in triggers as well as in
     // mainline code, the CPU can't be the one to be tracking the
     // remaining time on the wait.  There can be more than one place where
     // a wait was pending.  So instead track the pending time inside the
     // opcode itself, by having the opcode store its timestamp when it is
     // meant to end, and checking it each time.
     if (endTime < 0) // initial time being executed.
     {
         double arg = Convert.ToDouble(cpu.PopValue());
         endTime = cpu.StartWait(arg);
         DeltaInstructionPointer = 0; // stay here next time.
     }
     else if (cpu.SessionTime < endTime) // It's in the midst of an already running wait, and it's not expired yet.
     {
         cpu.StartWait(0); // kick back to wait mode again.
         DeltaInstructionPointer = 0; // stay here next time, to test this again.
     }
     else // It was in an already running wait, and the wait just expired.
     {
         endTime = -1; // reset in case this is called again in a loop.
         DeltaInstructionPointer = 1; // okay now move on.
     }
 }
开发者ID:CalebJ2,项目名称:KOS,代码行数:25,代码来源:Opcode.cs

示例2: Execute

 public override void Execute(ICpu cpu)
 {
     object arg = cpu.PopValue();
     cpu.StartWait(Convert.ToDouble(arg));
 }
开发者ID:Whitecaribou,项目名称:KOS,代码行数:5,代码来源:Opcode.cs


注:本文中的ICpu.StartWait方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。