有一家生产奶酪的厂家,每天需要生产100000份奶酪卖给超市笔试题目比较难,不好下手。我是这么回答的:设计此系统其实就是找到一个平衡点对资源进行调度。 2份牛奶1份发酵剂准备好之前,奶酪生产等待;生产完奶酪后即送冷库,冷库达到100份奶酪后,运输车辆启动,冷库达到1000份奶酪时,奶酪生产暂停;货车送出100000份奶酪后,奶酪生产暂停。
类似于生产者消费者问题,信号量和PV操作。void cheeseProduce(void) // 生产奶酪进程{ P(sp); //sp:消耗2份牛奶,1份发酵剂 生产奶酪;V(sp); //生产牛奶和奶酪}void car(void) // 运输车进程{ P(sp); //冷库达到100份奶酪 运输车启动 V(sp); //往冷库存放奶酪}void cold (void) // 冷库进程{P(sp); //冷库奶酪空间减少 冷库达到1000奶酪,生产暂停 V(sp); //运输奶酪释放冷库空间}void cheese (void) // 奶酪进程{ P(sp); //需要生产的奶酪数量减少 生产奶酪到100000,停止生产 V(sp); //配送奶酪 }
其实也可以把这个奶酪生产比作为奶酪生产是工作线程(worker),这个工作线程需要另外两个工作线程提供两类计算数据,冷库是内存,运输车辆是网络带宽,100000份奶酪是工作线程生产的数据总量。
1轮面试:笔试
面试感受:不好;面试难度:有难度;面试来源:网络招聘
共1个问题,1条回答
Q:没有机会面试,这公司比较奇葩,人事本来是约了晚上8点面试,然后等到晚上9点才打电话来,说什么面试官有事,然后说之后另外安排时间,过了几天,打电话问面试时间,他们人事竟然说什么招聘条件提高了,你不符合,我觉的太不专业了,希望贵公司尊重一下每一位面试者,你不招人可以不让人家填写各种资料啊,你不招人为啥要答笔试题?