重新读我自己的帖子,我感觉有可能我把问题搞复杂了。* C r/ K9 `+ y
. f$ l) P6 E- C9 {0 _( g* ?- W我说的方法是当需要非常精确的调度每个货位时的方法,这样,每个货位都有一个数组单元对应。- L2 i, Y, @/ U3 s" }, }) ~! s0 U
" I, z$ }7 _4 u
但如果仅仅是按照 X, Y,Z 大类而言,也许并不需要建立这样的数组。
9 H- A L. t7 [' X" \- X4 }- X) w: u0 V+ q7 h$ }1 t
(1)如果XYZ 有各自单独的库存,那么仅仅需要三个 Queue 模块,一个模块代表一个货物类型,并且容量是有上限的,凡是 X 的货物直进入到第一个 Queue 模块,Y 进入到第二个模块,Z进入到第三个模块。" b3 v9 U9 b& {. b1 Q4 K
+ @& [6 t! L" E7 \. z# s(2)如果 XYZ 共享同一的库存,那么仅仅需要一个 Queue, Equation 模块(请注意不是 Queue 模块,单一的 Queue 模块没有办法区分 XYZ不同货物类型)。 不管什么货物都进入到这个模块,然后按照需要从中抽取出不同类型的货物。
0 [, b8 z4 p% r& j; `9 y1 V$ j0 `" l: E$ m
节省了全局数组,也可以节省大量的数据更新和编写程序的需要。& o- n5 q. x# s# e
( }# v2 x! _: S* k- S仅供参考。 |