重新读我自己的帖子,我感觉有可能我把问题搞复杂了。
# ]9 W: M% n3 |
# Y& A9 {8 a0 N6 j& G$ T, ~$ N我说的方法是当需要非常精确的调度每个货位时的方法,这样,每个货位都有一个数组单元对应。6 Q- `' t, P* r) g% X
+ U$ O8 l V. s. j& h9 g6 C( \但如果仅仅是按照 X, Y,Z 大类而言,也许并不需要建立这样的数组。
: O9 E8 G, X/ P) _, n- k4 }! K n& S. g# X3 V7 A) e
(1)如果XYZ 有各自单独的库存,那么仅仅需要三个 Queue 模块,一个模块代表一个货物类型,并且容量是有上限的,凡是 X 的货物直进入到第一个 Queue 模块,Y 进入到第二个模块,Z进入到第三个模块。
* @0 [+ f; [ M# a0 u* y% N1 O+ I- _( ?$ {8 {% o% |5 ~0 X/ R) t
(2)如果 XYZ 共享同一的库存,那么仅仅需要一个 Queue, Equation 模块(请注意不是 Queue 模块,单一的 Queue 模块没有办法区分 XYZ不同货物类型)。 不管什么货物都进入到这个模块,然后按照需要从中抽取出不同类型的货物。. g2 c( K9 q- ^; L* y
- P6 d7 A7 f& |. T; s节省了全局数组,也可以节省大量的数据更新和编写程序的需要。) s9 S0 [7 E* l) f
4 I, i/ o1 ?# R3 N9 G! D
仅供参考。 |