设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 10637|回复: 3

[求助] 求助关于Order lists的问题

[复制链接]
发表于 2009-3-4 11:54:58 | 显示全部楼层 |阅读模式
5仿真币
在使用Order List时,当一个order list满足不了order的数量,要用第二个甚至第三个order list,有一段程序,请大虾解释一下,多谢!程序如下:
0 F! `7 x- v! O' n/ M" G$ ~( ]begin P_Order arriving procedure
+ X. @7 ^* ^6 u) j2 V  set V_NumWanted to 10
/ J6 z! J: Y8 i  Y; ^) o. a* r  set V_NumOnList to OL_List1 current value% y; Q% x6 n9 x& G' n
  order V_NumWanted loads from OL_List1 to P_NextProc
+ a, N4 f) }, N- e6 i% _, g     in case order not filled
' T( c9 s' [6 c9 L6 u5 N' R      begin
- N& a2 S& c6 q6 \/ s* S        wait for .01 sec  S9 I' s7 b( |' p2 L4 h& S
       decrement V_NumWanted by V_NumOnList - OL_List1 current value
4 h/ J$ y2 g! Y( z2 c       set V_NumOnList to OL_List2 current value3 I" O, f! V1 ~6 x' f) T
       order V_NumWanted loads from OL_List2 to P_NextProc
, o* i! c( _" ^! d6 ]% u          in case case order not filled
, @3 m: P0 H! M   .................................................................
# V/ Q7 J7 {" @* ?3 x8 T3 s( k6 R
1 e7 z, Y1 B; n3 b3 l; x
& C" M5 L+ O  I' f$ J) r我就是不明白上面用红绿色作标记的那句,为什么后面要加-OL_List1 current value.用前面绿色部分,即把不够的load算出来就不行了吗?

最佳答案

查看完整内容

由于有in case order not filled这句,所以我觉得红色部分应该可以去掉。你还是自己测试一下吧,不一定要按书上说的做。
发表于 2009-3-4 11:54:59 | 显示全部楼层
由于有in case order not filled这句,所以我觉得红色部分应该可以去掉。你还是自己测试一下吧,不一定要按书上说的做。
 楼主| 发表于 2009-3-6 09:11:35 | 显示全部楼层
谢谢TX!
发表于 2009-3-11 20:23:30 | 显示全部楼层
我是觉得这句没有更好。
6 Y* N  |6 f# q0 I" O8 s1 h2 M
, h/ {8 e1 G% `3 n4 ]分析一下,他要写上wait for .01 sec,目的应该是,第一个OL里的load先出去,再去order第二个OL,否则容易乱序;而在这0.01秒内,恐怕不能保证OL1里面不进新load。如果这样的话,有这句 - OL_List1 current value反倒容易出问题。
- f# ^0 b: |2 q
3 _: M1 H+ n2 `6 `写这个程序的大概是西方人吧,喜欢逻辑上的严谨和形式上的正确?
) T1 Z8 G& r( P或者,OL里会存在有Load不被Order出来的问题么?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-4-27 21:55 , Processed in 0.014523 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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