设为首页收藏本站

最大的系统仿真与系统优化公益交流社区

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 3972|回复: 2

[求助] 如何终止一个MUs自身的method属性?

  [复制链接]
发表于 2011-10-25 15:25:46 | 显示全部楼层 |阅读模式
我的模型中Mus在多个路段移动。在路段上需要随时扫描一些条件,并根据扫描结果执行相关的操作。不同路段需要扫描的条件不同,执行的操作也不相同。
1 k' o) W- Z5 \我为MUs定义了method属性,在mus进入路段入口时触发method,并在method中让method每1秒钟自调用一次。
5 F0 W$ g4 j% i# U. o但由此造成的问题是,mus在随后的过程中一直调用这个method属性。我现在是在这个method的最外层加了个判断,根据所处路段位置执行不同操作。
* n+ C, p# l6 @! f5 P( U现在的问题是能否在mus离开路段时,终止method属性的自我调用?这样我就可以把不同路段的逻辑拆分到不同method中,method程序的结构更清晰,而且相应的计算速度也快一些。
7 I! Z2 j* n+ q, d6 v! q# i( \9 B先谢谢大家啦
 楼主| 发表于 2011-10-25 22:16:28 | 显示全部楼层
taoyifei2000 发表于 2011-10-25 19:11 * m- E5 e4 F% W
学会使用deletemethcall命令,用法详见help,我实现过,可行的。" I; K9 [  v+ \( H# i/ e
但是要注意和methcall命令的关系,最好把m ...

5 r5 S+ V! i: [. i) p9 q收到!非常感谢!
发表于 2011-11-25 20:16:29 | 显示全部楼层
本帖最后由 五五 于 2011-11-25 20:18 编辑 5 ]$ y6 _, G' X% W' I" [5 K
/ D7 Y' `7 `$ w0 x
while ture loop
6 m: F- `* w, m! [8 V6 j" j  if 未进入路段 then # a9 ?! i1 p3 T* N: J: Z; A
    waituntil 进入路段 prio 1
# @3 @: m7 N9 s$ o5 p, b  end
' X' U0 y* d  v5 I. R* O0 k
6 H" M0 w7 i6 W4 N) H  if 不符合所有条件 then1 X9 Z$ `) K) o8 s4 w
   waituntil 条件1 or 条件2 or .. or 离开路段 prio 1* M7 U/ l7 r. A5 _: E
  end! S2 ]8 {" n: Z% v5 R3 M$ |) ?; C9 f

! F" B" I- y" O; ^  if 条件1 then   p. b, }* }" m5 b
  elseif 条件2 then4 m+ e% S5 y7 K+ k* w
  ...
6 S: g1 [, d# I" Y5 o' j3 ?; F  G- @& P
  elseif 离开路段 then
% q- G- @% S0 \3 h& z) r: d. R' h: o     exitloop
/ O% ]8 g5 e& Y, }9 ~  end
4 T2 M1 s3 N/ l" W: k8 k3 \end
+ C" p9 K; Y4 E& p5 c6 Z6 S& O2 B0 Z* C# X
希望有帮助~
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|Archiver|手机版|SimulWay 道于仿真   

GMT+8, 2026-2-6 00:36 , Processed in 0.017613 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表