该程序模拟客户到银行取号-排队-被叫号-被服务的过程; 2) 程序执行流程如下: Step1: 客户到达银行,并从取号机取号; Step2: 如果大厅中有空闲座位,则座下等待,否则,在大厅外等待; Step3: 银行职员如果发现有客户等待,则依次叫号服务,否则休息; Step4: step1-step4重复执行 3) 大厅中座椅数量为20个; 4) 服务窗口为2个; 5) “客户到来”通过命令行输入客户名字模拟; 6) 为了模拟实际情况,每个客户服务时间不小于20秒,可随机确定; 7) 程序顺序列出不同窗口服务客户的:名称,窗口号,服务时间 思想:程序等待一特定信号输入,若接收到该信号,则创建对应的进程。 如果目前等待态的进程个数等于座位数,则该进程阻塞。否则,进入等待态。 若等待态的进程个数小于座位数,查看是否有阻塞进程,若有则唤醒,若无,则不做任何操作。 ps:本程序在Linux下已经运行成功
1