设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 3097|回复: 2

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

  [复制链接]
发表于 2011-10-25 15:25:46 | 显示全部楼层 |阅读模式
我的模型中Mus在多个路段移动。在路段上需要随时扫描一些条件,并根据扫描结果执行相关的操作。不同路段需要扫描的条件不同,执行的操作也不相同。
& f' U, t* j/ ]2 Y) q; s+ A我为MUs定义了method属性,在mus进入路段入口时触发method,并在method中让method每1秒钟自调用一次。
( |. h) t7 a' Z4 a9 |% J: _7 h! H但由此造成的问题是,mus在随后的过程中一直调用这个method属性。我现在是在这个method的最外层加了个判断,根据所处路段位置执行不同操作。; m: j9 @3 C* U( ?" m6 i
现在的问题是能否在mus离开路段时,终止method属性的自我调用?这样我就可以把不同路段的逻辑拆分到不同method中,method程序的结构更清晰,而且相应的计算速度也快一些。
  W7 _9 h, `# C9 e3 A先谢谢大家啦
 楼主| 发表于 2011-10-25 22:16:28 | 显示全部楼层
taoyifei2000 发表于 2011-10-25 19:11
7 y% V  [4 |% O0 ]$ n学会使用deletemethcall命令,用法详见help,我实现过,可行的。
3 a# v/ ?" V- M' V. F& i6 J$ f但是要注意和methcall命令的关系,最好把m ...

1 \! z! F: Y! c5 s# G& Z收到!非常感谢!
发表于 2011-11-25 20:16:29 | 显示全部楼层
本帖最后由 五五 于 2011-11-25 20:18 编辑 % @! ^$ X: U* G( d
  x# u: ~+ }% i. G6 g7 N# K
while ture loop
6 t: {- k4 s# ]- X  if 未进入路段 then ( d- j6 \1 F! Z- X" P5 I
    waituntil 进入路段 prio 1
, [8 z, _" i' ^' S: g( \: U8 n  end
0 e. M! S, Y4 U$ l( K/ {5 N) \
6 `( c# F; ?: ^3 [5 b  if 不符合所有条件 then* n) m" b% y: `7 p; v
   waituntil 条件1 or 条件2 or .. or 离开路段 prio 17 y4 h8 m4 _7 u, g) Y2 W5 h5 `+ J
  end
. q& F3 ^- ~8 w( ^
  w1 a1 ^' \7 H% g  if 条件1 then
: W7 b# V% [! J  elseif 条件2 then
; x4 I& c/ g( ^0 L5 T9 u( a  .../ [5 [7 U; P8 S% C1 p
) `* q' n2 Q( d' d
  elseif 离开路段 then5 \* H' c  O) J
     exitloop. A. L8 J3 `+ T' e+ U6 e
  end
" g# P- ^& o9 O4 d; G% xend
! W. f& l$ [9 Z: B' G$ V% C  i. |+ p  n% [# Q( G9 T" y3 w
希望有帮助~
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-5-12 10:50 , Processed in 0.014031 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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