gcc -Wall -pthread -o manager manager.c ./manager 5 15 25 TOTAL = [ 22, 14, 10, 26, 12 ] Worker 3 makes allocation request [ 0, 0, 0, 0, 1 ] Worker 3 granted request AVAILABLE = [ 22, 14, 10, 26, 11 ] Worker 8 makes allocation request [ 0, 2, 0, 0, 0 ] Worker 8 granted request AVAILABLE = [ 22, 12, 10, 26, 11 ] Worker 13 makes allocation request [ 0, 0, 0, 0, 2 ] Worker 13 granted request AVAILABLE = [ 22, 12, 10, 26, 9 ] Worker 14 makes allocation request [ 0, 0, 0, 2, 2 ] Worker 14 granted request AVAILABLE = [ 22, 12, 10, 24, 7 ] Worker 6 makes allocation request [ 0, 0, 0, 2, 1 ] Worker 6 granted request AVAILABLE = [ 22, 12, 10, 22, 6 ] Worker 2 makes allocation request [ 3, 0, 3, 0, 1 ] Worker 2 granted request AVAILABLE = [ 19, 12, 7, 22, 5 ] Worker 1 makes allocation request [ 0, 2, 2, 0, 0 ] Worker 1 granted request AVAILABLE = [ 19, 10, 5, 22, 5 ] Worker 4 makes allocation request [ 0, 3, 0, 3, 1 ] Worker 4 granted request AVAILABLE = [ 19, 7, 5, 19, 4 ] Worker 12 makes allocation request [ 0, 0, 0, 0, 1 ] Worker 12 granted request AVAILABLE = [ 19, 7, 5, 19, 3 ] Worker 7 makes allocation request [ 0, 0, 0, 1, 0 ] Worker 7 granted request AVAILABLE = [ 19, 7, 5, 18, 3 ] Worker 9 makes allocation request [ 0, 0, 2, 0, 0 ] Worker 9 granted request AVAILABLE = [ 19, 7, 3, 18, 3 ] Worker 10 makes allocation request [ 0, 2, 0, 0, 0 ] Worker 10 granted request AVAILABLE = [ 19, 5, 3, 18, 3 ] Worker 10 makes allocation request [ 0, 0, 0, 1, 0 ] Worker 10 granted request AVAILABLE = [ 19, 5, 3, 17, 3 ] Worker 13 makes allocation request [ 0, 0, 1, 0, 0 ] Worker 13 granted request AVAILABLE = [ 19, 5, 2, 17, 3 ] Worker 8 makes allocation request [ 0, 2, 0, 3, 0 ] Worker 8 granted request AVAILABLE = [ 19, 3, 2, 14, 3 ] Worker 3 makes allocation request [ 2, 1, 0, 3, 0 ] Worker 3 granted request AVAILABLE = [ 17, 2, 2, 11, 3 ] Worker 0 makes allocation request [ 0, 0, 0, 0, 1 ] Worker 0 granted request AVAILABLE = [ 17, 2, 2, 11, 2 ] Deadlock detection in progress Finish sequence: 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 No deadlock detected Worker 9 makes allocation request [ 0, 0, 2, 0, 0 ] Worker 9 granted request AVAILABLE = [ 17, 2, 0, 11, 2 ] Worker 14 makes allocation request [ 0, 0, 0, 1, 2 ] Worker 14 granted request AVAILABLE = [ 17, 2, 0, 10, 0 ] Worker 11 makes allocation request [ 2, 0, 1, 0, 1 ] Worker 11 has to wait Workers waiting: ( 11 ) Worker 1 makes allocation request [ 3, 0, 3, 0, 0 ] Worker 1 has to wait Workers waiting: ( 11, 1 ) Worker 2 makes release request [ 3, 0, 0, 0, 0 ] AVAILABLE = [ 20, 2, 0, 10, 0 ] Workers waiting: ( 11, 1 ) Worker 13 makes allocation request [ 0, 1, 0, 0, 2 ] Worker 13 has to wait Workers waiting: ( 11, 1, 13 ) Worker 8 makes allocation request [ 0, 2, 0, 0, 0 ] Worker 8 granted request AVAILABLE = [ 20, 0, 0, 10, 0 ] Worker 3 makes release request [ 0, 0, 0, 1, 0 ] AVAILABLE = [ 20, 0, 0, 11, 0 ] Workers waiting: ( 11, 1, 13 ) Worker 4 makes release request [ 0, 1, 0, 0, 1 ] AVAILABLE = [ 20, 1, 0, 11, 1 ] Workers waiting: ( 11, 1, 13 ) Worker 9 makes release request [ 0, 0, 3, 0, 0 ] AVAILABLE = [ 20, 1, 3, 11, 1 ] Workers waiting: ( 11, 1, 13 ) Worker 11 granted pending request [ 2, 0, 1, 0, 1 ] AVAILABLE = [ 18, 1, 2, 11, 0 ] Worker 10 makes allocation request [ 2, 1, 0, 0, 1 ] Worker 10 has to wait Workers waiting: ( 1, 13, 10 ) Worker 6 makes release request [ 0, 0, 0, 1, 1 ] AVAILABLE = [ 18, 1, 2, 12, 1 ] Workers waiting: ( 1, 13, 10 ) Worker 10 granted pending request [ 2, 1, 0, 0, 1 ] AVAILABLE = [ 16, 0, 2, 12, 0 ] Worker 3 makes release request [ 1, 0, 0, 0, 0 ] AVAILABLE = [ 17, 0, 2, 12, 0 ] Workers waiting: ( 1, 13 ) Worker 14 makes release request [ 0, 0, 0, 0, 1 ] AVAILABLE = [ 17, 0, 2, 12, 1 ] Workers waiting: ( 1, 13 ) Worker 4 makes allocation request [ 0, 0, 0, 2, 0 ] Worker 4 granted request AVAILABLE = [ 17, 0, 2, 10, 1 ] Worker 8 makes allocation request [ 1, 3, 0, 3, 0 ] Worker 8 has to wait Workers waiting: ( 1, 13, 8 ) Worker 3 makes release request [ 1, 0, 0, 0, 0 ] AVAILABLE = [ 18, 0, 2, 10, 1 ] Workers waiting: ( 1, 13, 8 ) Worker 11 makes allocation request [ 0, 0, 0, 2, 0 ] Worker 11 granted request AVAILABLE = [ 18, 0, 2, 8, 1 ] Worker 6 makes allocation request [ 2, 0, 0, 0, 0 ] Worker 6 granted request AVAILABLE = [ 16, 0, 2, 8, 1 ] Worker 3 makes allocation request [ 0, 3, 3, 0, 3 ] Worker 3 has to wait Workers waiting: ( 1, 13, 8, 3 ) Worker 10 makes allocation request [ 0, 1, 0, 2, 0 ] Worker 10 has to wait Workers waiting: ( 1, 13, 8, 3, 10 ) Worker 4 makes allocation request [ 1, 1, 1, 3, 0 ] Worker 4 has to wait Workers waiting: ( 1, 13, 8, 3, 10, 4 ) Deadlock detection in progress Finish sequence: 0 2 1 4 3 5 6 7 8 9 10 11 12 13 14 No deadlock detected Worker 11 makes allocation request [ 0, 3, 2, 0, 0 ] Worker 11 has to wait Workers waiting: ( 1, 13, 8, 3, 10, 4, 11 ) Worker 2 makes release request [ 0, 0, 1, 0, 0 ] AVAILABLE = [ 16, 0, 3, 8, 1 ] Workers waiting: ( 1, 13, 8, 3, 10, 4, 11 ) Worker 1 granted pending request [ 3, 0, 3, 0, 0 ] AVAILABLE = [ 13, 0, 0, 8, 1 ] Worker 9 makes allocation request [ 1, 0, 0, 0, 0 ] Worker 9 granted request AVAILABLE = [ 12, 0, 0, 8, 1 ] Worker 14 makes allocation request [ 0, 0, 2, 0, 2 ] Worker 14 has to wait Workers waiting: ( 13, 8, 3, 10, 4, 11, 14 ) Worker 6 makes release request [ 0, 0, 0, 1, 0 ] AVAILABLE = [ 12, 0, 0, 9, 1 ] Workers waiting: ( 13, 8, 3, 10, 4, 11, 14 ) Worker 12 makes allocation request [ 3, 1, 3, 1, 3 ] Worker 12 has to wait Workers waiting: ( 13, 8, 3, 10, 4, 11, 14, 12 ) Worker 2 makes allocation request [ 0, 3, 2, 2, 0 ] Worker 2 has to wait Workers waiting: ( 13, 8, 3, 10, 4, 11, 14, 12, 2 ) Worker 9 makes release request [ 0, 0, 1, 0, 0 ] AVAILABLE = [ 12, 0, 1, 9, 1 ] Workers waiting: ( 13, 8, 3, 10, 4, 11, 14, 12, 2 ) Worker 0 makes allocation request [ 1, 0, 0, 0, 0 ] Worker 0 granted request AVAILABLE = [ 11, 0, 1, 9, 1 ] Worker 1 makes allocation request [ 0, 1, 0, 2, 0 ] Worker 1 has to wait Workers waiting: ( 13, 8, 3, 10, 4, 11, 14, 12, 2, 1 ) Worker 0 makes allocation request [ 2, 0, 3, 0, 3 ] Worker 0 has to wait Workers waiting: ( 13, 8, 3, 10, 4, 11, 14, 12, 2, 1, 0 ) Worker 7 makes allocation request [ 2, 3, 2, 0, 0 ] Worker 7 has to wait Workers waiting: ( 13, 8, 3, 10, 4, 11, 14, 12, 2, 1, 0, 7 ) Worker 6 makes allocation request [ 0, 0, 0, 0, 2 ] Worker 6 has to wait Workers waiting: ( 13, 8, 3, 10, 4, 11, 14, 12, 2, 1, 0, 7, 6 ) Worker 5 makes allocation request [ 0, 2, 0, 0, 0 ] Worker 5 has to wait Workers waiting: ( 13, 8, 3, 10, 4, 11, 14, 12, 2, 1, 0, 7, 6, 5 ) Deadlock detection in progress Finish sequence: 9 Deadlock detected Allocation status: 0:2 1:10 2:3 3:4 4:7 5:0 6:2 7:1 8:9 10:7 11:6 12:1 13:3 14:6 Preempting resources from worker 1 with 10 resources Worker 10 granted pending request [ 0, 1, 0, 2, 0 ] AVAILABLE = [ 14, 1, 6, 7, 1 ] Worker 4 granted pending request [ 1, 1, 1, 3, 0 ] AVAILABLE = [ 13, 0, 5, 4, 1 ] Deadlock detection in progress Finish sequence: 4 1 2 5 6 7 8 9 10 0 3 11 12 13 14 No deadlock detected Worker 9 makes allocation request [ 1, 0, 0, 0, 0 ] Worker 9 granted request AVAILABLE = [ 12, 0, 5, 4, 1 ] Worker 4 makes release request [ 0, 2, 0, 4, 0 ] AVAILABLE = [ 12, 2, 5, 8, 1 ] Workers waiting: ( 13, 8, 3, 11, 14, 12, 2, 1, 0, 7, 6, 5 ) Worker 1 granted pending request [ 0, 1, 0, 2, 0 ] AVAILABLE = [ 12, 1, 5, 6, 1 ] Worker 10 makes release request [ 0, 1, 0, 0, 1 ] AVAILABLE = [ 12, 2, 5, 6, 2 ] Workers waiting: ( 13, 8, 3, 11, 14, 12, 2, 0, 7, 6, 5 ) Worker 13 granted pending request [ 0, 1, 0, 0, 2 ] AVAILABLE = [ 12, 1, 5, 6, 0 ] Worker 9 makes release request [ 2, 0, 0, 0, 0 ] AVAILABLE = [ 14, 1, 5, 6, 0 ] Workers waiting: ( 8, 3, 11, 14, 12, 2, 0, 7, 6, 5 ) Worker 13 makes release request [ 0, 1, 0, 0, 0 ] AVAILABLE = [ 14, 2, 5, 6, 0 ] Workers waiting: ( 8, 3, 11, 14, 12, 2, 0, 7, 6, 5 ) Worker 5 granted pending request [ 0, 2, 0, 0, 0 ] AVAILABLE = [ 14, 0, 5, 6, 0 ] Worker 4 makes allocation request [ 0, 0, 3, 0, 0 ] Worker 4 granted request AVAILABLE = [ 14, 0, 2, 6, 0 ] Worker 10 makes allocation request [ 0, 0, 0, 2, 2 ] Worker 10 has to wait Workers waiting: ( 8, 3, 11, 14, 12, 2, 0, 7, 6, 10 ) Deadlock detection in progress Finish sequence: 1 4 5 2 7 8 9 11 6 10 13 0 3 12 14 No deadlock detected Worker 5 makes release request [ 0, 1, 0, 0, 0 ] AVAILABLE = [ 14, 1, 2, 6, 0 ] Workers waiting: ( 8, 3, 11, 14, 12, 2, 0, 7, 6, 10 ) Worker 1 makes release request [ 0, 0, 0, 1, 0 ] AVAILABLE = [ 14, 1, 2, 7, 0 ] Workers waiting: ( 8, 3, 11, 14, 12, 2, 0, 7, 6, 10 ) Worker 5 makes allocation request [ 3, 2, 0, 2, 0 ] Worker 5 has to wait Workers waiting: ( 8, 3, 11, 14, 12, 2, 0, 7, 6, 10, 5 ) Worker 13 makes release request [ 0, 0, 0, 0, 2 ] AVAILABLE = [ 14, 1, 2, 7, 2 ] Workers waiting: ( 8, 3, 11, 14, 12, 2, 0, 7, 6, 10, 5 ) Worker 14 granted pending request [ 0, 0, 2, 0, 2 ] AVAILABLE = [ 14, 1, 0, 7, 0 ] Worker 4 makes release request [ 0, 0, 0, 2, 0 ] AVAILABLE = [ 14, 1, 0, 9, 0 ] Workers waiting: ( 8, 3, 11, 12, 2, 0, 7, 6, 10, 5 ) Worker 9 makes allocation request [ 3, 0, 0, 1, 0 ] Worker 9 granted request AVAILABLE = [ 11, 1, 0, 8, 0 ] Worker 13 makes allocation request [ 1, 0, 0, 0, 0 ] Worker 13 granted request AVAILABLE = [ 10, 1, 0, 8, 0 ] Worker 1 makes release request [ 0, 1, 0, 1, 0 ] AVAILABLE = [ 10, 2, 0, 9, 0 ] Workers waiting: ( 8, 3, 11, 12, 2, 0, 7, 6, 10, 5 ) Worker 5 granted pending request [ 3, 2, 0, 2, 0 ] AVAILABLE = [ 7, 0, 0, 7, 0 ] Worker 4 makes allocation request [ 0, 0, 3, 0, 0 ] Worker 4 has to wait Workers waiting: ( 8, 3, 11, 12, 2, 0, 7, 6, 10, 4 ) Worker 14 makes release request [ 0, 0, 0, 0, 2 ] AVAILABLE = [ 7, 0, 0, 7, 2 ] Workers waiting: ( 8, 3, 11, 12, 2, 0, 7, 6, 10, 4 ) Worker 6 granted pending request [ 0, 0, 0, 0, 2 ] AVAILABLE = [ 7, 0, 0, 7, 0 ] Worker 13 makes release request [ 0, 0, 1, 0, 0 ] AVAILABLE = [ 7, 0, 1, 7, 0 ] Workers waiting: ( 8, 3, 11, 12, 2, 0, 7, 10, 4 ) Worker 5 makes allocation request [ 0, 0, 2, 0, 0 ] Worker 5 has to wait Workers waiting: ( 8, 3, 11, 12, 2, 0, 7, 10, 4, 5 ) Deadlock detection in progress Finish sequence: 1 6 9 10 8 13 14 0 2 3 4 5 7 11 12 No deadlock detected Worker 14 makes allocation request [ 2, 0, 2, 1, 0 ] Worker 14 has to wait Workers waiting: ( 8, 3, 11, 12, 2, 0, 7, 10, 4, 5, 14 ) Worker 6 makes allocation request [ 0, 3, 0, 2, 1 ] Worker 6 has to wait Workers waiting: ( 8, 3, 11, 12, 2, 0, 7, 10, 4, 5, 14, 6 ) Worker 9 makes allocation request [ 0, 0, 0, 0, 3 ] Worker 9 has to wait Workers waiting: ( 8, 3, 11, 12, 2, 0, 7, 10, 4, 5, 14, 6, 9 ) Worker 13 makes release request [ 1, 0, 0, 0, 0 ] AVAILABLE = [ 8, 0, 1, 7, 0 ] Workers waiting: ( 8, 3, 11, 12, 2, 0, 7, 10, 4, 5, 14, 6, 9 ) Worker 13 makes release request [ 0, 0, 0, 0, 2 ] AVAILABLE = [ 8, 0, 1, 7, 2 ] Workers waiting: ( 8, 3, 11, 12, 2, 0, 7, 10, 4, 5, 14, 6, 9 ) Worker 10 granted pending request [ 0, 0, 0, 2, 2 ] AVAILABLE = [ 8, 0, 1, 5, 0 ] Deadlock detection in progress Finish sequence: 1 10 6 8 9 13 Deadlock detected Allocation status: 0:2 2:3 3:4 4:8 5:8 7:1 11:6 12:1 14:8 Preempting resources from worker 4 with 8 resources Worker 4 granted pending request [ 0, 0, 3, 0, 0 ] AVAILABLE = [ 9, 1, 2, 7, 0 ] Worker 5 granted pending request [ 0, 0, 2, 0, 0 ] AVAILABLE = [ 9, 1, 0, 7, 0 ] Deadlock detection in progress Finish sequence: 1 4 5 2 6 0 3 7 8 9 10 11 12 13 14 No deadlock detected Worker 10 makes release request [ 0, 3, 0, 5, 1 ] AVAILABLE = [ 9, 4, 0, 12, 1 ] Workers waiting: ( 8, 3, 11, 12, 2, 0, 7, 14, 6, 9 ) Worker 8 granted pending request [ 1, 3, 0, 3, 0 ] AVAILABLE = [ 8, 1, 0, 9, 1 ] Worker 5 makes allocation request [ 1, 2, 0, 0, 2 ] Worker 5 has to wait Workers waiting: ( 3, 11, 12, 2, 0, 7, 14, 6, 9, 5 ) Worker 4 makes release request [ 0, 0, 3, 0, 0 ] AVAILABLE = [ 8, 1, 3, 9, 1 ] Workers waiting: ( 3, 11, 12, 2, 0, 7, 14, 6, 9, 5 ) Worker 14 granted pending request [ 2, 0, 2, 1, 0 ] AVAILABLE = [ 6, 1, 1, 8, 1 ] Worker 10 makes release request [ 2, 0, 0, 0, 0 ] AVAILABLE = [ 8, 1, 1, 8, 1 ] Workers waiting: ( 3, 11, 12, 2, 0, 7, 6, 9, 5 ) Worker 8 makes allocation request [ 1, 3, 2, 0, 1 ] Worker 8 has to wait Workers waiting: ( 3, 11, 12, 2, 0, 7, 6, 9, 5, 8 ) Worker 14 makes allocation request [ 0, 3, 0, 0, 0 ] Worker 14 has to wait Workers waiting: ( 3, 11, 12, 2, 0, 7, 6, 9, 5, 8, 14 ) Worker 1 makes allocation request [ 3, 3, 0, 3, 0 ] Worker 1 has to wait Workers waiting: ( 3, 11, 12, 2, 0, 7, 6, 9, 5, 8, 14, 1 ) Worker 4 makes allocation request [ 0, 0, 2, 0, 0 ] Worker 4 has to wait Workers waiting: ( 3, 11, 12, 2, 0, 7, 6, 9, 5, 8, 14, 1, 4 ) Deadlock detection in progress Finish sequence: 10 13 Deadlock detected Allocation status: 0:2 1:0 2:3 3:4 4:0 5:10 6:4 7:1 8:16 9:4 11:6 12:1 14:13 Preempting resources from worker 8 with 16 resources Worker 6 granted pending request [ 0, 3, 0, 2, 1 ] AVAILABLE = [ 9, 7, 1, 12, 0 ] Worker 14 granted pending request [ 0, 3, 0, 0, 0 ] AVAILABLE = [ 9, 4, 1, 12, 0 ] Worker 1 granted pending request [ 3, 3, 0, 3, 0 ] AVAILABLE = [ 6, 1, 1, 9, 0 ] Deadlock detection in progress Finish sequence: 1 6 5 0 2 3 4 7 8 9 10 11 12 13 14 No deadlock detected Worker 13 makes allocation request [ 0, 1, 1, 2, 1 ] Worker 13 has to wait Workers waiting: ( 3, 11, 12, 2, 0, 7, 9, 5, 8, 4, 13 ) Worker 1 makes release request [ 0, 3, 0, 2, 0 ] AVAILABLE = [ 6, 4, 1, 11, 0 ] Workers waiting: ( 3, 11, 12, 2, 0, 7, 9, 5, 8, 4, 13 ) Worker 14 makes release request [ 2, 3, 4, 0, 1 ] AVAILABLE = [ 8, 7, 5, 11, 1 ] Workers waiting: ( 3, 11, 12, 2, 0, 7, 9, 5, 8, 4, 13 ) Worker 11 granted pending request [ 0, 3, 2, 0, 0 ] AVAILABLE = [ 8, 4, 3, 11, 1 ] Worker 2 granted pending request [ 0, 3, 2, 2, 0 ] AVAILABLE = [ 8, 1, 1, 9, 1 ] Worker 13 granted pending request [ 0, 1, 1, 2, 1 ] AVAILABLE = [ 8, 0, 0, 7, 0 ] Worker 10 makes release request [ 0, 0, 0, 0, 1 ] AVAILABLE = [ 8, 0, 0, 7, 1 ] Workers waiting: ( 3, 12, 0, 7, 9, 5, 8, 4 ) Worker 1 makes allocation request [ 0, 0, 1, 1, 0 ] Worker 1 has to wait Workers waiting: ( 3, 12, 0, 7, 9, 5, 8, 4, 1 ) Worker 6 makes release request [ 1, 1, 0, 0, 0 ] AVAILABLE = [ 9, 1, 0, 7, 1 ] Workers waiting: ( 3, 12, 0, 7, 9, 5, 8, 4, 1 ) Worker 11 makes allocation request [ 0, 2, 2, 0, 0 ] Worker 11 has to wait Workers waiting: ( 3, 12, 0, 7, 9, 5, 8, 4, 1, 11 ) Worker 13 makes release request [ 0, 0, 1, 1, 0 ] AVAILABLE = [ 9, 1, 1, 8, 1 ] Workers waiting: ( 3, 12, 0, 7, 9, 5, 8, 4, 1, 11 ) Worker 1 granted pending request [ 0, 0, 1, 1, 0 ] AVAILABLE = [ 9, 1, 0, 7, 1 ] Worker 2 makes release request [ 0, 0, 4, 0, 0 ] AVAILABLE = [ 9, 1, 4, 7, 1 ] Workers waiting: ( 3, 12, 0, 7, 9, 5, 8, 4, 11 ) Worker 4 granted pending request [ 0, 0, 2, 0, 0 ] AVAILABLE = [ 9, 1, 2, 7, 1 ] Worker 6 makes release request [ 1, 0, 0, 2, 0 ] AVAILABLE = [ 10, 1, 2, 9, 1 ] Workers waiting: ( 3, 12, 0, 7, 9, 5, 8, 11 ) Deadlock detection in progress Finish sequence: 1 2 4 5 6 0 3 7 8 9 10 11 12 13 14 No deadlock detected Worker 2 makes release request [ 0, 3, 0, 0, 0 ] AVAILABLE = [ 10, 4, 2, 9, 1 ] Workers waiting: ( 3, 12, 0, 7, 9, 5, 8, 11 ) Worker 7 granted pending request [ 2, 3, 2, 0, 0 ] AVAILABLE = [ 8, 1, 0, 9, 1 ] Worker 14 makes allocation request [ 0, 3, 0, 0, 0 ] Worker 14 has to wait Workers waiting: ( 3, 12, 0, 9, 5, 8, 11, 14 ) Worker 13 makes allocation request [ 0, 0, 1, 0, 0 ] Worker 13 has to wait Workers waiting: ( 3, 12, 0, 9, 5, 8, 11, 14, 13 ) Worker 6 makes allocation request [ 3, 3, 1, 0, 1 ] Worker 6 has to wait Workers waiting: ( 3, 12, 0, 9, 5, 8, 11, 14, 13, 6 ) Worker 7 makes release request [ 0, 0, 1, 0, 0 ] AVAILABLE = [ 8, 1, 1, 9, 1 ] Workers waiting: ( 3, 12, 0, 9, 5, 8, 11, 14, 13, 6 ) Worker 13 granted pending request [ 0, 0, 1, 0, 0 ] AVAILABLE = [ 8, 1, 0, 9, 1 ] Worker 2 makes allocation request [ 0, 0, 1, 0, 2 ] Worker 2 has to wait Workers waiting: ( 3, 12, 0, 9, 5, 8, 11, 14, 6, 2 ) Worker 10 makes allocation request [ 2, 0, 0, 0, 2 ] Worker 10 has to wait Workers waiting: ( 3, 12, 0, 9, 5, 8, 11, 14, 6, 2, 10 ) Worker 1 makes release request [ 0, 0, 0, 1, 0 ] AVAILABLE = [ 8, 1, 0, 10, 1 ] Workers waiting: ( 3, 12, 0, 9, 5, 8, 11, 14, 6, 2, 10 ) Worker 4 makes release request [ 0, 0, 2, 0, 0 ] AVAILABLE = [ 8, 1, 2, 10, 1 ] Workers waiting: ( 3, 12, 0, 9, 5, 8, 11, 14, 6, 2, 10 ) Worker 13 makes release request [ 0, 0, 0, 0, 1 ] AVAILABLE = [ 8, 1, 2, 10, 2 ] Workers waiting: ( 3, 12, 0, 9, 5, 8, 11, 14, 6, 2, 10 ) Worker 2 granted pending request [ 0, 0, 1, 0, 2 ] AVAILABLE = [ 8, 1, 1, 10, 0 ] Worker 1 makes allocation request [ 0, 1, 1, 2, 0 ] Worker 1 granted request AVAILABLE = [ 8, 0, 0, 8, 0 ] Worker 4 makes allocation request [ 2, 0, 2, 2, 3 ] Worker 4 has to wait Workers waiting: ( 3, 12, 0, 9, 5, 8, 11, 14, 6, 10, 4 ) Worker 7 makes release request [ 0, 3, 1, 0, 0 ] AVAILABLE = [ 8, 3, 1, 8, 0 ] Workers waiting: ( 3, 12, 0, 9, 5, 8, 11, 14, 6, 10, 4 ) Worker 14 granted pending request [ 0, 3, 0, 0, 0 ] AVAILABLE = [ 8, 0, 1, 8, 0 ] Deadlock detection in progress Finish sequence: 1 2 0 4 7 9 10 12 13 5 3 6 8 11 14 No deadlock detected Worker 13 makes release request [ 0, 1, 0, 1, 0 ] AVAILABLE = [ 8, 1, 1, 9, 0 ] Workers waiting: ( 3, 12, 0, 9, 5, 8, 11, 6, 10, 4 ) Worker 2 makes release request [ 0, 0, 1, 2, 0 ] AVAILABLE = [ 8, 1, 2, 11, 0 ] Workers waiting: ( 3, 12, 0, 9, 5, 8, 11, 6, 10, 4 ) Worker 7 makes release request [ 2, 0, 0, 1, 0 ] AVAILABLE = [ 10, 1, 2, 12, 0 ] Workers waiting: ( 3, 12, 0, 9, 5, 8, 11, 6, 10, 4 ) Worker 13 makes release request [ 0, 0, 1, 0, 0 ] AVAILABLE = [ 10, 1, 3, 12, 0 ] Workers waiting: ( 3, 12, 0, 9, 5, 8, 11, 6, 10, 4 ) Worker 14 makes release request [ 0, 2, 0, 3, 2 ] AVAILABLE = [ 10, 3, 3, 15, 2 ] Workers waiting: ( 3, 12, 0, 9, 5, 8, 11, 6, 10, 4 ) Worker 5 granted pending request [ 1, 2, 0, 0, 2 ] AVAILABLE = [ 9, 1, 3, 15, 0 ] Worker 2 makes allocation request [ 0, 1, 0, 1, 3 ] Worker 2 has to wait Workers waiting: ( 3, 12, 0, 9, 8, 11, 6, 10, 4, 2 ) Worker 5 makes allocation request [ 0, 0, 1, 0, 0 ] Worker 5 granted request AVAILABLE = [ 9, 1, 2, 15, 0 ] Worker 1 makes release request [ 1, 0, 1, 0, 0 ] AVAILABLE = [ 10, 1, 3, 15, 0 ] Workers waiting: ( 3, 12, 0, 9, 8, 11, 6, 10, 4, 2 ) Worker 7 makes allocation request [ 0, 0, 0, 1, 0 ] Worker 7 granted request AVAILABLE = [ 10, 1, 3, 14, 0 ] Deadlock detection in progress Finish sequence: 1 5 6 0 2 3 4 7 8 9 10 11 12 13 14 No deadlock detected Worker 1 makes allocation request [ 0, 0, 0, 0, 3 ] Worker 1 has to wait Workers waiting: ( 3, 12, 0, 9, 8, 11, 6, 10, 4, 2, 1 ) Worker 5 makes release request [ 0, 3, 0, 0, 1 ] AVAILABLE = [ 10, 4, 3, 14, 1 ] Workers waiting: ( 3, 12, 0, 9, 8, 11, 6, 10, 4, 2, 1 ) Worker 8 granted pending request [ 1, 3, 2, 0, 1 ] AVAILABLE = [ 9, 1, 1, 14, 0 ] Worker 13 makes allocation request [ 0, 3, 0, 0, 0 ] Worker 13 has to wait Workers waiting: ( 3, 12, 0, 9, 11, 6, 10, 4, 2, 1, 13 ) Worker 14 makes release request [ 0, 0, 0, 1, 0 ] AVAILABLE = [ 9, 1, 1, 15, 0 ] Workers waiting: ( 3, 12, 0, 9, 11, 6, 10, 4, 2, 1, 13 ) Worker 14 makes release request [ 0, 1, 0, 0, 0 ] AVAILABLE = [ 9, 2, 1, 15, 0 ] Workers waiting: ( 3, 12, 0, 9, 11, 6, 10, 4, 2, 1, 13 ) Worker 8 makes release request [ 0, 0, 1, 0, 1 ] AVAILABLE = [ 9, 2, 2, 15, 1 ] Workers waiting: ( 3, 12, 0, 9, 11, 6, 10, 4, 2, 1, 13 ) Worker 11 granted pending request [ 0, 2, 2, 0, 0 ] AVAILABLE = [ 9, 0, 0, 15, 1 ] Worker 8 makes allocation request [ 1, 2, 0, 2, 0 ] Worker 8 has to wait Workers waiting: ( 3, 12, 0, 9, 6, 10, 4, 2, 1, 13, 8 ) Deadlock detection in progress Finish sequence: 5 7 8 6 0 1 2 3 4 9 10 11 12 13 14 No deadlock detected Worker 14 makes allocation request [ 2, 0, 0, 2, 3 ] Worker 14 has to wait Workers waiting: ( 3, 12, 0, 9, 6, 10, 4, 2, 1, 13, 8, 14 ) Worker 5 makes allocation request [ 0, 0, 2, 0, 3 ] Worker 5 has to wait Workers waiting: ( 3, 12, 0, 9, 6, 10, 4, 2, 1, 13, 8, 14, 5 ) Worker 11 makes release request [ 2, 5, 3, 0, 0 ] AVAILABLE = [ 11, 5, 3, 15, 1 ] Workers waiting: ( 3, 12, 0, 9, 6, 10, 4, 2, 1, 13, 8, 14, 5 ) Worker 6 granted pending request [ 3, 3, 1, 0, 1 ] AVAILABLE = [ 8, 2, 2, 15, 0 ] Worker 8 granted pending request [ 1, 2, 0, 2, 0 ] AVAILABLE = [ 7, 0, 2, 13, 0 ] Worker 6 makes release request [ 0, 0, 1, 0, 2 ] AVAILABLE = [ 7, 0, 3, 13, 2 ] Workers waiting: ( 3, 12, 0, 9, 10, 4, 2, 1, 13, 14, 5 ) Worker 10 granted pending request [ 2, 0, 0, 0, 2 ] AVAILABLE = [ 5, 0, 3, 13, 0 ] Worker 8 makes release request [ 1, 1, 0, 0, 0 ] AVAILABLE = [ 6, 1, 3, 13, 0 ] Workers waiting: ( 3, 12, 0, 9, 4, 2, 1, 13, 14, 5 ) Worker 11 makes release request [ 0, 0, 0, 0, 1 ] AVAILABLE = [ 6, 1, 3, 13, 1 ] Workers waiting: ( 3, 12, 0, 9, 4, 2, 1, 13, 14, 5 ) Worker 6 makes release request [ 0, 4, 0, 0, 0 ] AVAILABLE = [ 6, 5, 3, 13, 1 ] Workers waiting: ( 3, 12, 0, 9, 4, 2, 1, 13, 14, 5 ) Worker 13 granted pending request [ 0, 3, 0, 0, 0 ] AVAILABLE = [ 6, 2, 3, 13, 1 ] Worker 10 makes allocation request [ 0, 0, 0, 3, 2 ] Worker 10 has to wait Workers waiting: ( 3, 12, 0, 9, 4, 2, 1, 14, 5, 10 ) Deadlock detection in progress Finish sequence: 6 0 1 2 3 4 5 7 8 9 10 11 12 13 14 No deadlock detected Worker 8 makes release request [ 0, 1, 0, 0, 0 ] AVAILABLE = [ 6, 3, 3, 13, 1 ] Workers waiting: ( 3, 12, 0, 9, 4, 2, 1, 14, 5, 10 ) Worker 6 makes allocation request [ 3, 2, 1, 0, 0 ] Worker 6 granted request AVAILABLE = [ 3, 1, 2, 13, 1 ] Worker 11 makes release request [ 0, 0, 1, 0, 0 ] AVAILABLE = [ 3, 1, 3, 13, 1 ] Workers waiting: ( 3, 12, 0, 9, 4, 2, 1, 14, 5, 10 ) Worker 13 makes release request [ 0, 1, 0, 0, 0 ] AVAILABLE = [ 3, 2, 3, 13, 1 ] Workers waiting: ( 3, 12, 0, 9, 4, 2, 1, 14, 5, 10 ) Worker 8 makes allocation request [ 0, 0, 1, 3, 0 ] Worker 8 granted request AVAILABLE = [ 3, 2, 2, 10, 1 ] Worker 7 makes release request [ 0, 0, 0, 1, 0 ] AVAILABLE = [ 3, 2, 2, 11, 1 ] Workers waiting: ( 3, 12, 0, 9, 4, 2, 1, 14, 5, 10 ) Worker 13 makes allocation request [ 0, 0, 3, 0, 1 ] Worker 13 has to wait Workers waiting: ( 3, 12, 0, 9, 4, 2, 1, 14, 5, 10, 13 ) Worker 11 makes allocation request [ 1, 0, 3, 2, 1 ] Worker 11 has to wait Workers waiting: ( 3, 12, 0, 9, 4, 2, 1, 14, 5, 10, 13, 11 ) Worker 6 makes allocation request [ 2, 2, 0, 0, 0 ] Worker 6 granted request AVAILABLE = [ 1, 0, 2, 11, 1 ] Worker 8 makes release request [ 1, 3, 0, 5, 0 ] AVAILABLE = [ 2, 3, 2, 16, 1 ] Workers waiting: ( 3, 12, 0, 9, 4, 2, 1, 14, 5, 10, 13, 11 ) Worker 6 makes release request [ 0, 0, 1, 0, 0 ] AVAILABLE = [ 2, 3, 3, 16, 1 ] Workers waiting: ( 3, 12, 0, 9, 4, 2, 1, 14, 5, 10, 13, 11 ) Worker 13 granted pending request [ 0, 0, 3, 0, 1 ] AVAILABLE = [ 2, 3, 0, 16, 0 ] Deadlock detection in progress Finish sequence: 6 7 8 10 1 0 2 3 4 5 9 11 12 13 14 No deadlock detected Worker 7 makes allocation request [ 0, 0, 2, 0, 0 ] Worker 7 has to wait Workers waiting: ( 3, 12, 0, 9, 4, 2, 1, 14, 5, 10, 11, 7 ) Worker 13 makes allocation request [ 1, 0, 0, 0, 3 ] Worker 13 has to wait Workers waiting: ( 3, 12, 0, 9, 4, 2, 1, 14, 5, 10, 11, 7, 13 ) Worker 6 makes release request [ 0, 3, 0, 0, 2 ] AVAILABLE = [ 2, 6, 0, 16, 2 ] Workers waiting: ( 3, 12, 0, 9, 4, 2, 1, 14, 5, 10, 11, 7, 13 ) Worker 10 granted pending request [ 0, 0, 0, 3, 2 ] AVAILABLE = [ 2, 6, 0, 13, 0 ] Worker 10 makes release request [ 0, 0, 0, 2, 0 ] AVAILABLE = [ 2, 6, 0, 15, 0 ] Workers waiting: ( 3, 12, 0, 9, 4, 2, 1, 14, 5, 11, 7, 13 ) Deadlock detection in progress Finish sequence: 6 8 7 10 1 0 2 3 4 5 9 11 12 13 14 No deadlock detected Worker 10 makes allocation request [ 0, 0, 0, 0, 2 ] Worker 10 has to wait Workers waiting: ( 3, 12, 0, 9, 4, 2, 1, 14, 5, 11, 7, 13, 10 ) Deadlock detection in progress Finish sequence: 6 8 7 Deadlock detected Allocation status: 0:2 1:7 2:3 3:4 4:0 5:12 9:4 10:7 11:3 12:1 13:6 14:0 Preempting resources from worker 5 with 12 resources Worker 11 granted pending request [ 1, 0, 3, 2, 1 ] AVAILABLE = [ 5, 8, 0, 15, 0 ] Deadlock detection in progress Finish sequence: 6 8 7 11 Deadlock detected Allocation status: 0:2 1:7 2:3 3:4 4:0 5:0 9:4 10:7 12:1 13:6 14:0 Preempting resources from worker 1 with 7 resources Deadlock detection in progress Finish sequence: 6 8 7 11 Deadlock detected Allocation status: 0:2 1:0 2:3 3:4 4:0 5:0 9:4 10:7 12:1 13:6 14:0 Preempting resources from worker 10 with 7 resources Worker 9 granted pending request [ 0, 0, 0, 0, 3 ] AVAILABLE = [ 9, 9, 1, 19, 1 ] Deadlock detection in progress Finish sequence: 6 8 7 9 0 1 2 3 4 5 10 11 12 13 14 No deadlock detected Worker 8 makes release request [ 0, 0, 1, 0, 0 ] AVAILABLE = [ 9, 9, 2, 19, 1 ] Workers waiting: ( 3, 12, 0, 4, 2, 1, 14, 5, 7, 13, 10 ) Worker 7 granted pending request [ 0, 0, 2, 0, 0 ] AVAILABLE = [ 9, 9, 0, 19, 1 ] Worker 11 makes allocation request [ 0, 3, 0, 3, 1 ] Worker 11 granted request AVAILABLE = [ 9, 6, 0, 16, 0 ] Worker 6 makes release request [ 0, 2, 0, 0, 0 ] AVAILABLE = [ 9, 8, 0, 16, 0 ] Workers waiting: ( 3, 12, 0, 4, 2, 1, 14, 5, 13, 10 ) Worker 9 makes allocation request [ 0, 0, 1, 0, 2 ] Worker 9 has to wait Workers waiting: ( 3, 12, 0, 4, 2, 1, 14, 5, 13, 10, 9 ) Worker 8 makes allocation request [ 1, 0, 0, 0, 2 ] Worker 8 has to wait Workers waiting: ( 3, 12, 0, 4, 2, 1, 14, 5, 13, 10, 9, 8 ) Worker 7 makes allocation request [ 0, 0, 2, 0, 0 ] Worker 7 has to wait Workers waiting: ( 3, 12, 0, 4, 2, 1, 14, 5, 13, 10, 9, 8, 7 ) Deadlock detection in progress Finish sequence: 6 11 7 8 9 0 1 2 3 4 5 10 12 13 14 No deadlock detected Worker 6 makes release request [ 6, 0, 0, 0, 0 ] AVAILABLE = [ 15, 8, 0, 16, 0 ] Workers waiting: ( 3, 12, 0, 4, 2, 1, 14, 5, 13, 10, 9, 8, 7 ) Worker 11 makes release request [ 1, 1, 1, 3, 0 ] AVAILABLE = [ 16, 9, 1, 19, 0 ] Workers waiting: ( 3, 12, 0, 4, 2, 1, 14, 5, 13, 10, 9, 8, 7 ) Worker 6 makes release request [ 2, 0, 0, 0, 0 ] AVAILABLE = [ 18, 9, 1, 19, 0 ] Workers waiting: ( 3, 12, 0, 4, 2, 1, 14, 5, 13, 10, 9, 8, 7 ) Deadlock detection in progress Finish sequence: 6 11 7 8 9 0 1 2 3 4 5 10 12 13 14 No deadlock detected Worker 11 makes release request [ 0, 0, 0, 0, 1 ] AVAILABLE = [ 18, 9, 1, 19, 1 ] Workers waiting: ( 3, 12, 0, 4, 2, 1, 14, 5, 13, 10, 9, 8, 7 ) Worker 6 makes allocation request [ 1, 1, 0, 0, 0 ] Worker 6 granted request AVAILABLE = [ 17, 8, 1, 19, 1 ] Worker 11 makes release request [ 0, 0, 0, 0, 1 ] AVAILABLE = [ 17, 8, 1, 19, 2 ] Workers waiting: ( 3, 12, 0, 4, 2, 1, 14, 5, 13, 10, 9, 8, 7 ) Worker 10 granted pending request [ 0, 0, 0, 0, 2 ] AVAILABLE = [ 17, 8, 1, 19, 0 ] Worker 11 makes allocation request [ 0, 3, 0, 0, 0 ] Worker 11 granted request AVAILABLE = [ 17, 5, 1, 19, 0 ] Worker 10 makes release request [ 0, 0, 0, 0, 1 ] AVAILABLE = [ 17, 5, 1, 19, 1 ] Workers waiting: ( 3, 12, 0, 4, 2, 1, 14, 5, 13, 9, 8, 7 ) Deadlock detection in progress Finish sequence: 6 10 8 7 9 0 1 2 3 4 5 11 12 13 14 No deadlock detected Worker 6 makes allocation request [ 2, 1, 0, 1, 2 ] Worker 6 has to wait Workers waiting: ( 3, 12, 0, 4, 2, 1, 14, 5, 13, 9, 8, 7, 6 ) Worker 10 makes allocation request [ 3, 0, 0, 1, 0 ] Worker 10 granted request AVAILABLE = [ 14, 5, 1, 18, 1 ] Worker 11 makes release request [ 0, 0, 3, 0, 0 ] AVAILABLE = [ 14, 5, 4, 18, 1 ] Workers waiting: ( 3, 12, 0, 4, 2, 1, 14, 5, 13, 9, 8, 7, 6 ) Worker 7 granted pending request [ 0, 0, 2, 0, 0 ] AVAILABLE = [ 14, 5, 2, 18, 1 ] Worker 10 makes allocation request [ 1, 2, 0, 0, 0 ] Worker 10 granted request AVAILABLE = [ 13, 3, 2, 18, 1 ] Worker 10 makes allocation request [ 0, 0, 0, 3, 0 ] Worker 10 granted request AVAILABLE = [ 13, 3, 2, 15, 1 ] Worker 7 makes allocation request [ 0, 0, 2, 0, 3 ] Worker 7 has to wait Workers waiting: ( 3, 12, 0, 4, 2, 1, 14, 5, 13, 9, 8, 6, 7 ) Deadlock detection in progress Finish sequence: 10 6 8 9 0 1 2 3 4 5 7 11 12 13 14 No deadlock detected Worker 11 makes allocation request [ 0, 1, 3, 3, 0 ] Worker 11 has to wait Workers waiting: ( 3, 12, 0, 4, 2, 1, 14, 5, 13, 9, 8, 6, 7, 11 ) Worker 10 makes release request [ 3, 0, 0, 2, 0 ] AVAILABLE = [ 16, 3, 2, 17, 1 ] Workers waiting: ( 3, 12, 0, 4, 2, 1, 14, 5, 13, 9, 8, 6, 7, 11 ) Deadlock detection in progress Finish sequence: 10 6 8 9 0 1 2 3 4 5 7 11 12 13 14 No deadlock detected Worker 10 makes release request [ 1, 0, 0, 0, 0 ] AVAILABLE = [ 17, 3, 2, 17, 1 ] Workers waiting: ( 3, 12, 0, 4, 2, 1, 14, 5, 13, 9, 8, 6, 7, 11 ) Worker 10 makes allocation request [ 2, 3, 0, 0, 0 ] Worker 10 granted request AVAILABLE = [ 15, 0, 2, 17, 1 ] Deadlock detection in progress Finish sequence: 10 6 8 9 0 1 2 3 4 5 7 11 12 13 14 No deadlock detected Worker 10 makes release request [ 0, 0, 0, 1, 0 ] AVAILABLE = [ 15, 0, 2, 18, 1 ] Workers waiting: ( 3, 12, 0, 4, 2, 1, 14, 5, 13, 9, 8, 6, 7, 11 ) Worker 10 makes allocation request [ 0, 2, 0, 0, 0 ] Worker 10 has to wait Workers waiting: ( 3, 12, 0, 4, 2, 1, 14, 5, 13, 9, 8, 6, 7, 11, 10 ) Deadlock detection in progress Finish sequence: Deadlock detected Allocation status: 0:2 1:0 2:3 3:4 4:0 5:0 6:2 7:4 8:1 9:7 10:9 11:9 12:1 13:6 14:0 Preempting resources from worker 10 with 9 resources Worker 9 granted pending request [ 0, 0, 1, 0, 2 ] AVAILABLE = [ 17, 5, 1, 19, 0 ] Worker 10 granted pending request [ 0, 2, 0, 0, 0 ] AVAILABLE = [ 17, 3, 1, 19, 0 ] Deadlock detection in progress Finish sequence: 9 1 2 4 5 6 7 0 3 8 10 11 12 13 14 No deadlock detected Worker 9 makes release request [ 0, 0, 0, 0, 2 ] AVAILABLE = [ 17, 3, 1, 19, 2 ] Workers waiting: ( 3, 12, 0, 4, 2, 1, 14, 5, 13, 8, 6, 7, 11 ) Worker 8 granted pending request [ 1, 0, 0, 0, 2 ] AVAILABLE = [ 16, 3, 1, 19, 0 ] Worker 10 makes allocation request [ 0, 3, 0, 2, 0 ] Worker 10 granted request AVAILABLE = [ 16, 0, 1, 17, 0 ] Worker 8 makes allocation request [ 1, 0, 0, 3, 1 ] Worker 8 has to wait Workers waiting: ( 3, 12, 0, 4, 2, 1, 14, 5, 13, 6, 7, 11, 8 ) Worker 9 makes release request [ 1, 0, 0, 0, 0 ] AVAILABLE = [ 17, 0, 1, 17, 0 ] Workers waiting: ( 3, 12, 0, 4, 2, 1, 14, 5, 13, 6, 7, 11, 8 ) Deadlock detection in progress Finish sequence: 9 1 4 5 7 0 8 10 2 3 6 11 12 13 14 No deadlock detected Worker 10 makes allocation request [ 1, 0, 3, 0, 0 ] Worker 10 has to wait Workers waiting: ( 3, 12, 0, 4, 2, 1, 14, 5, 13, 6, 7, 11, 8, 10 ) Worker 9 makes release request [ 0, 0, 1, 0, 1 ] AVAILABLE = [ 17, 0, 2, 17, 1 ] Workers waiting: ( 3, 12, 0, 4, 2, 1, 14, 5, 13, 6, 7, 11, 8, 10 ) Worker 8 granted pending request [ 1, 0, 0, 3, 1 ] AVAILABLE = [ 16, 0, 2, 14, 0 ] Worker 8 makes release request [ 0, 0, 0, 3, 0 ] AVAILABLE = [ 16, 0, 2, 17, 0 ] Workers waiting: ( 3, 12, 0, 4, 2, 1, 14, 5, 13, 6, 7, 11, 10 ) Deadlock detection in progress Finish sequence: 8 0 1 4 5 7 9 10 2 3 6 11 12 13 14 No deadlock detected Worker 9 makes release request [ 2, 0, 0, 0, 0 ] AVAILABLE = [ 18, 0, 2, 17, 0 ] Workers waiting: ( 3, 12, 0, 4, 2, 1, 14, 5, 13, 6, 7, 11, 10 ) Worker 8 makes allocation request [ 0, 3, 0, 0, 0 ] Worker 8 has to wait Workers waiting: ( 3, 12, 0, 4, 2, 1, 14, 5, 13, 6, 7, 11, 10, 8 ) Worker 9 makes allocation request [ 0, 0, 0, 0, 3 ] Worker 9 has to wait Workers waiting: ( 3, 12, 0, 4, 2, 1, 14, 5, 13, 6, 7, 11, 10, 8, 9 ) Deadlock detection in progress Finish sequence: Deadlock detected Allocation status: 0:2 1:0 2:3 3:4 4:0 5:0 6:2 7:4 8:6 9:3 10:7 11:9 12:1 13:6 14:0 Preempting resources from worker 11 with 9 resources Worker 8 granted pending request [ 0, 3, 0, 0, 0 ] AVAILABLE = [ 18, 2, 2, 21, 0 ] Deadlock detection in progress Finish sequence: 8 0 1 2 3 4 5 6 7 9 10 11 12 13 14 No deadlock detected Worker 8 makes release request [ 0, 2, 0, 0, 0 ] AVAILABLE = [ 18, 4, 2, 21, 0 ] Workers waiting: ( 3, 12, 0, 4, 2, 1, 14, 5, 13, 6, 7, 11, 10, 9 ) Deadlock detection in progress Finish sequence: 8 0 1 2 3 4 5 6 7 9 10 11 12 13 14 No deadlock detected Worker 8 makes release request [ 2, 0, 0, 0, 1 ] AVAILABLE = [ 20, 4, 2, 21, 1 ] Workers waiting: ( 3, 12, 0, 4, 2, 1, 14, 5, 13, 6, 7, 11, 10, 9 ) Worker 8 makes release request [ 0, 1, 0, 0, 1 ] AVAILABLE = [ 20, 5, 2, 21, 2 ] Workers waiting: ( 3, 12, 0, 4, 2, 1, 14, 5, 13, 6, 7, 11, 10, 9 ) Worker 6 granted pending request [ 2, 1, 0, 1, 2 ] AVAILABLE = [ 18, 4, 2, 20, 0 ] Worker 8 makes release request [ 0, 0, 1, 0, 0 ] AVAILABLE = [ 18, 4, 3, 20, 0 ] Workers waiting: ( 3, 12, 0, 4, 2, 1, 14, 5, 13, 7, 11, 10, 9 ) Worker 11 granted pending request [ 0, 1, 3, 3, 0 ] AVAILABLE = [ 18, 3, 0, 17, 0 ] Worker 6 makes release request [ 1, 0, 0, 0, 0 ] AVAILABLE = [ 19, 3, 0, 17, 0 ] Workers waiting: ( 3, 12, 0, 4, 2, 1, 14, 5, 13, 7, 10, 9 ) Deadlock detection in progress Finish sequence: 6 8 1 2 9 11 0 3 4 5 7 10 12 13 14 No deadlock detected Worker 8 makes allocation request [ 3, 0, 0, 0, 1 ] Worker 8 has to wait Workers waiting: ( 3, 12, 0, 4, 2, 1, 14, 5, 13, 7, 10, 9, 8 ) Worker 11 makes release request [ 0, 0, 0, 3, 0 ] AVAILABLE = [ 19, 3, 0, 20, 0 ] Workers waiting: ( 3, 12, 0, 4, 2, 1, 14, 5, 13, 7, 10, 9, 8 ) Worker 6 makes release request [ 0, 0, 0, 1, 0 ] AVAILABLE = [ 19, 3, 0, 21, 0 ] Workers waiting: ( 3, 12, 0, 4, 2, 1, 14, 5, 13, 7, 10, 9, 8 ) Worker 6 makes allocation request [ 3, 0, 1, 0, 1 ] Worker 6 has to wait Workers waiting: ( 3, 12, 0, 4, 2, 1, 14, 5, 13, 7, 10, 9, 8, 6 ) Deadlock detection in progress Finish sequence: 11 10 Deadlock detected Allocation status: 0:2 1:0 2:3 3:4 4:0 5:0 6:6 7:4 8:1 9:3 12:1 13:6 14:0 Preempting resources from worker 6 with 6 resources Worker 8 granted pending request [ 3, 0, 0, 0, 1 ] AVAILABLE = [ 18, 5, 0, 21, 1 ] Deadlock detection in progress Finish sequence: 8 1 2 9 11 0 3 4 5 6 7 10 12 13 14 No deadlock detected Worker 11 makes release request [ 0, 0, 3, 0, 0 ] AVAILABLE = [ 18, 5, 3, 21, 1 ] Workers waiting: ( 3, 12, 0, 4, 2, 1, 14, 5, 13, 7, 10, 9, 6 ) Worker 10 granted pending request [ 1, 0, 3, 0, 0 ] AVAILABLE = [ 17, 5, 0, 21, 1 ] Worker 8 makes allocation request [ 1, 0, 1, 0, 3 ] Worker 8 has to wait Workers waiting: ( 3, 12, 0, 4, 2, 1, 14, 5, 13, 7, 9, 6, 8 ) Worker 10 makes release request [ 0, 2, 0, 0, 0 ] AVAILABLE = [ 17, 7, 0, 21, 1 ] Workers waiting: ( 3, 12, 0, 4, 2, 1, 14, 5, 13, 7, 9, 6, 8 ) Worker 11 makes allocation request [ 3, 0, 1, 0, 3 ] Worker 11 has to wait Workers waiting: ( 3, 12, 0, 4, 2, 1, 14, 5, 13, 7, 9, 6, 8, 11 ) Deadlock detection in progress Finish sequence: 10 6 Deadlock detected Allocation status: 0:2 1:0 2:3 3:4 4:0 5:0 7:4 8:5 9:3 11:1 12:1 13:6 14:0 Preempting resources from worker 13 with 6 resources Worker 6 granted pending request [ 3, 0, 1, 0, 1 ] AVAILABLE = [ 14, 9, 2, 21, 1 ] Deadlock detection in progress Finish sequence: 6 10 Deadlock detected Allocation status: 0:2 1:0 2:3 3:4 4:0 5:0 7:4 8:5 9:3 11:1 12:1 13:0 14:0 Preempting resources from worker 8 with 5 resources Worker 4 granted pending request [ 2, 0, 2, 2, 3 ] AVAILABLE = [ 15, 9, 0, 19, 0 ] Deadlock detection in progress Finish sequence: 4 1 2 5 6 0 3 7 8 9 10 11 12 13 14 No deadlock detected Worker 10 going to quit Releasing allocation [ 1, 3, 3, 2, 0 ] AVAILABLE = [ 16, 12, 3, 21, 0 ] Workers waiting: ( 3, 12, 0, 2, 1, 14, 5, 13, 7, 9, 8, 11 ) Worker 6 makes release request [ 0, 0, 1, 0, 0 ] AVAILABLE = [ 16, 12, 4, 21, 0 ] Workers waiting: ( 3, 12, 0, 2, 1, 14, 5, 13, 7, 9, 8, 11 ) Worker 4 makes release request [ 2, 0, 0, 1, 0 ] AVAILABLE = [ 18, 12, 4, 22, 0 ] Workers waiting: ( 3, 12, 0, 2, 1, 14, 5, 13, 7, 9, 8, 11 ) Worker 6 makes release request [ 0, 0, 0, 0, 1 ] AVAILABLE = [ 18, 12, 4, 22, 1 ] Workers waiting: ( 3, 12, 0, 2, 1, 14, 5, 13, 7, 9, 8, 11 ) Worker 4 makes allocation request [ 0, 3, 0, 1, 1 ] Worker 4 granted request AVAILABLE = [ 18, 9, 4, 21, 0 ] Worker 6 going to quit Releasing allocation [ 3, 0, 0, 0, 0 ] AVAILABLE = [ 21, 9, 4, 21, 0 ] Workers waiting: ( 3, 12, 0, 2, 1, 14, 5, 13, 7, 9, 8, 11 ) Deadlock detection in progress Finish sequence: 4 0 1 2 3 5 7 8 9 11 12 13 14 No deadlock detected Worker 4 makes allocation request [ 0, 1, 3, 0, 2 ] Worker 4 has to wait Workers waiting: ( 3, 12, 0, 2, 1, 14, 5, 13, 7, 9, 8, 11, 4 ) Deadlock detection in progress Finish sequence: Deadlock detected Allocation status: 0:2 1:0 2:3 3:4 4:11 5:0 7:4 8:0 9:3 11:1 12:1 13:0 14:0 Preempting resources from worker 4 with 11 resources Worker 3 granted pending request [ 0, 3, 3, 0, 3 ] AVAILABLE = [ 21, 9, 3, 23, 1 ] Deadlock detection in progress Finish sequence: 3 0 1 2 4 5 7 8 9 11 12 13 14 No deadlock detected Worker 3 makes release request [ 0, 3, 0, 2, 1 ] AVAILABLE = [ 21, 12, 3, 25, 2 ] Workers waiting: ( 12, 0, 2, 1, 14, 5, 13, 7, 9, 8, 11, 4 ) Worker 4 granted pending request [ 0, 1, 3, 0, 2 ] AVAILABLE = [ 21, 11, 0, 25, 0 ] Deadlock detection in progress Finish sequence: 3 0 1 2 4 5 7 8 9 11 12 13 14 No deadlock detected Worker 3 makes allocation request [ 3, 0, 0, 0, 0 ] Worker 3 granted request AVAILABLE = [ 18, 11, 0, 25, 0 ] Worker 4 makes release request [ 0, 1, 0, 0, 0 ] AVAILABLE = [ 18, 12, 0, 25, 0 ] Workers waiting: ( 12, 0, 2, 1, 14, 5, 13, 7, 9, 8, 11 ) Worker 3 makes allocation request [ 0, 0, 0, 0, 3 ] Worker 3 has to wait Workers waiting: ( 12, 0, 2, 1, 14, 5, 13, 7, 9, 8, 11, 3 ) Worker 4 makes release request [ 0, 0, 2, 0, 0 ] AVAILABLE = [ 18, 12, 2, 25, 0 ] Workers waiting: ( 12, 0, 2, 1, 14, 5, 13, 7, 9, 8, 11, 3 ) Deadlock detection in progress Finish sequence: 4 Deadlock detected Allocation status: 0:2 1:0 2:3 3:10 5:0 7:4 8:0 9:3 11:1 12:1 13:0 14:0 Preempting resources from worker 3 with 10 resources Worker 12 granted pending request [ 3, 1, 3, 1, 3 ] AVAILABLE = [ 18, 12, 2, 24, 0 ] Deadlock detection in progress Finish sequence: 4 12 0 1 2 3 5 7 8 9 11 13 14 No deadlock detected Worker 4 makes allocation request [ 0, 2, 0, 0, 0 ] Worker 4 granted request AVAILABLE = [ 18, 10, 2, 24, 0 ] Worker 12 makes release request [ 0, 0, 2, 0, 2 ] AVAILABLE = [ 18, 10, 4, 24, 2 ] Workers waiting: ( 0, 2, 1, 14, 5, 13, 7, 9, 8, 11, 3 ) Worker 12 makes release request [ 0, 0, 1, 0, 0 ] AVAILABLE = [ 18, 10, 5, 24, 2 ] Workers waiting: ( 0, 2, 1, 14, 5, 13, 7, 9, 8, 11, 3 ) Worker 4 makes release request [ 0, 2, 0, 0, 2 ] AVAILABLE = [ 18, 12, 5, 24, 4 ] Workers waiting: ( 0, 2, 1, 14, 5, 13, 7, 9, 8, 11, 3 ) Worker 0 granted pending request [ 2, 0, 3, 0, 3 ] AVAILABLE = [ 16, 12, 2, 24, 1 ] Deadlock detection in progress Finish sequence: 0 1 2 3 4 5 7 8 9 11 12 13 14 No deadlock detected Worker 12 makes release request [ 0, 0, 0, 1, 2 ] AVAILABLE = [ 16, 12, 2, 25, 3 ] Workers waiting: ( 2, 1, 14, 5, 13, 7, 9, 8, 11, 3 ) Worker 2 granted pending request [ 0, 1, 0, 1, 3 ] AVAILABLE = [ 16, 11, 2, 24, 0 ] Worker 0 makes release request [ 3, 0, 0, 0, 0 ] AVAILABLE = [ 19, 11, 2, 24, 0 ] Workers waiting: ( 1, 14, 5, 13, 7, 9, 8, 11, 3 ) Worker 0 makes release request [ 0, 0, 1, 0, 0 ] AVAILABLE = [ 19, 11, 3, 24, 0 ] Workers waiting: ( 1, 14, 5, 13, 7, 9, 8, 11, 3 ) Worker 2 makes release request [ 0, 0, 0, 0, 1 ] AVAILABLE = [ 19, 11, 3, 24, 1 ] Workers waiting: ( 1, 14, 5, 13, 7, 9, 8, 11, 3 ) Worker 12 makes release request [ 0, 1, 0, 0, 0 ] AVAILABLE = [ 19, 12, 3, 24, 1 ] Workers waiting: ( 1, 14, 5, 13, 7, 9, 8, 11, 3 ) Worker 2 makes release request [ 0, 0, 0, 1, 4 ] AVAILABLE = [ 19, 12, 3, 25, 5 ] Workers waiting: ( 1, 14, 5, 13, 7, 9, 8, 11, 3 ) Worker 1 granted pending request [ 0, 0, 0, 0, 3 ] AVAILABLE = [ 19, 12, 3, 25, 2 ] Deadlock detection in progress Finish sequence: 0 1 2 3 4 5 7 8 9 11 12 13 14 No deadlock detected Worker 2 makes allocation request [ 0, 0, 3, 0, 0 ] Worker 2 granted request AVAILABLE = [ 19, 12, 0, 25, 2 ] Worker 0 makes release request [ 0, 0, 1, 0, 0 ] AVAILABLE = [ 19, 12, 1, 25, 2 ] Workers waiting: ( 14, 5, 13, 7, 9, 8, 11, 3 ) Worker 4 makes release request [ 0, 0, 1, 0, 0 ] AVAILABLE = [ 19, 12, 2, 25, 2 ] Workers waiting: ( 14, 5, 13, 7, 9, 8, 11, 3 ) Worker 0 makes allocation request [ 0, 0, 0, 2, 0 ] Worker 0 granted request AVAILABLE = [ 19, 12, 2, 23, 2 ] Worker 1 makes allocation request [ 3, 0, 2, 2, 0 ] Worker 1 granted request AVAILABLE = [ 16, 12, 0, 21, 2 ] Worker 2 makes allocation request [ 0, 3, 2, 2, 3 ] Worker 2 has to wait Workers waiting: ( 14, 5, 13, 7, 9, 8, 11, 3, 2 ) Worker 12 makes allocation request [ 0, 0, 1, 0, 2 ] Worker 12 has to wait Workers waiting: ( 14, 5, 13, 7, 9, 8, 11, 3, 2, 12 ) Worker 4 makes allocation request [ 0, 0, 0, 3, 0 ] Worker 4 granted request AVAILABLE = [ 16, 12, 0, 18, 2 ] Worker 0 makes release request [ 0, 0, 0, 1, 0 ] AVAILABLE = [ 16, 12, 0, 19, 2 ] Workers waiting: ( 14, 5, 13, 7, 9, 8, 11, 3, 2, 12 ) Deadlock detection in progress Finish sequence: 0 1 2 3 4 5 7 8 9 11 12 13 14 No deadlock detected Worker 1 makes release request [ 1, 0, 0, 0, 0 ] AVAILABLE = [ 17, 12, 0, 19, 2 ] Workers waiting: ( 14, 5, 13, 7, 9, 8, 11, 3, 2, 12 ) Worker 1 makes allocation request [ 2, 0, 3, 2, 0 ] Worker 1 has to wait Workers waiting: ( 14, 5, 13, 7, 9, 8, 11, 3, 2, 12, 1 ) Worker 0 makes release request [ 0, 0, 1, 1, 0 ] AVAILABLE = [ 17, 12, 1, 20, 2 ] Workers waiting: ( 14, 5, 13, 7, 9, 8, 11, 3, 2, 12, 1 ) Worker 12 granted pending request [ 0, 0, 1, 0, 2 ] AVAILABLE = [ 17, 12, 0, 20, 0 ] Worker 12 makes release request [ 0, 0, 0, 0, 1 ] AVAILABLE = [ 17, 12, 0, 20, 1 ] Workers waiting: ( 14, 5, 13, 7, 9, 8, 11, 3, 2, 1 ) Deadlock detection in progress Finish sequence: 0 3 4 9 12 8 11 13 14 Deadlock detected Allocation status: 1:9 2:5 5:0 7:4 Preempting resources from worker 1 with 9 resources Worker 14 granted pending request [ 2, 0, 0, 2, 3 ] AVAILABLE = [ 17, 12, 2, 20, 1 ] Deadlock detection in progress Finish sequence: 0 2 1 3 4 5 7 8 9 11 12 13 14 No deadlock detected Worker 0 makes allocation request [ 3, 0, 0, 1, 2 ] Worker 0 has to wait Workers waiting: ( 5, 13, 7, 9, 8, 11, 3, 2, 1, 0 ) Worker 14 makes release request [ 0, 0, 0, 1, 0 ] AVAILABLE = [ 17, 12, 2, 21, 1 ] Workers waiting: ( 5, 13, 7, 9, 8, 11, 3, 2, 1, 0 ) Worker 12 makes release request [ 1, 0, 1, 0, 1 ] AVAILABLE = [ 18, 12, 3, 21, 2 ] Workers waiting: ( 5, 13, 7, 9, 8, 11, 3, 2, 1, 0 ) Worker 1 granted pending request [ 2, 0, 3, 2, 0 ] AVAILABLE = [ 16, 12, 0, 19, 2 ] Worker 0 granted pending request [ 3, 0, 0, 1, 2 ] AVAILABLE = [ 13, 12, 0, 18, 0 ] Worker 14 makes release request [ 0, 0, 0, 0, 1 ] AVAILABLE = [ 13, 12, 0, 18, 1 ] Workers waiting: ( 5, 13, 7, 9, 8, 11, 3, 2 ) Worker 1 makes allocation request [ 2, 1, 0, 3, 2 ] Worker 1 has to wait Workers waiting: ( 5, 13, 7, 9, 8, 11, 3, 2, 1 ) Worker 4 makes release request [ 0, 0, 0, 2, 0 ] AVAILABLE = [ 13, 12, 0, 20, 1 ] Workers waiting: ( 5, 13, 7, 9, 8, 11, 3, 2, 1 ) Worker 0 makes allocation request [ 0, 0, 0, 3, 3 ] Worker 0 has to wait Workers waiting: ( 5, 13, 7, 9, 8, 11, 3, 2, 1, 0 ) Worker 4 makes allocation request [ 0, 3, 3, 0, 2 ] Worker 4 has to wait Workers waiting: ( 5, 13, 7, 9, 8, 11, 3, 2, 1, 0, 4 ) Worker 14 makes allocation request [ 3, 0, 0, 0, 0 ] Worker 14 granted request AVAILABLE = [ 10, 12, 0, 20, 1 ] Deadlock detection in progress Finish sequence: 12 14 0 1 2 3 4 5 7 8 9 11 13 No deadlock detected Worker 12 makes allocation request [ 0, 3, 0, 3, 0 ] Worker 12 granted request AVAILABLE = [ 10, 9, 0, 17, 1 ] Worker 14 makes release request [ 4, 0, 0, 0, 2 ] AVAILABLE = [ 14, 9, 0, 17, 3 ] Workers waiting: ( 5, 13, 7, 9, 8, 11, 3, 2, 1, 0, 4 ) Worker 13 granted pending request [ 1, 0, 0, 0, 3 ] AVAILABLE = [ 13, 9, 0, 17, 0 ] Worker 13 makes release request [ 0, 0, 0, 0, 1 ] AVAILABLE = [ 13, 9, 0, 17, 1 ] Workers waiting: ( 5, 7, 9, 8, 11, 3, 2, 1, 0, 4 ) Worker 14 makes release request [ 1, 0, 0, 0, 0 ] AVAILABLE = [ 14, 9, 0, 17, 1 ] Workers waiting: ( 5, 7, 9, 8, 11, 3, 2, 1, 0, 4 ) Worker 12 makes allocation request [ 0, 2, 3, 1, 0 ] Worker 12 has to wait Workers waiting: ( 5, 7, 9, 8, 11, 3, 2, 1, 0, 4, 12 ) Deadlock detection in progress Finish sequence: 13 0 1 2 3 4 5 7 8 9 11 12 14 No deadlock detected Worker 13 makes release request [ 1, 0, 0, 0, 0 ] AVAILABLE = [ 15, 9, 0, 17, 1 ] Workers waiting: ( 5, 7, 9, 8, 11, 3, 2, 1, 0, 4, 12 ) Worker 14 makes allocation request [ 3, 3, 1, 2, 0 ] Worker 14 has to wait Workers waiting: ( 5, 7, 9, 8, 11, 3, 2, 1, 0, 4, 12, 14 ) Worker 13 makes allocation request [ 0, 0, 0, 3, 0 ] Worker 13 granted request AVAILABLE = [ 15, 9, 0, 14, 1 ] Worker 13 makes release request [ 0, 0, 0, 0, 1 ] AVAILABLE = [ 15, 9, 0, 14, 2 ] Workers waiting: ( 5, 7, 9, 8, 11, 3, 2, 1, 0, 4, 12, 14 ) Worker 1 granted pending request [ 2, 1, 0, 3, 2 ] AVAILABLE = [ 13, 8, 0, 11, 0 ] Deadlock detection in progress Finish sequence: 1 4 12 13 0 2 3 5 7 8 9 11 14 No deadlock detected Worker 13 makes release request [ 0, 0, 0, 2, 0 ] AVAILABLE = [ 13, 8, 0, 13, 0 ] Workers waiting: ( 5, 7, 9, 8, 11, 3, 2, 0, 4, 12, 14 ) Worker 13 makes allocation request [ 0, 0, 2, 1, 0 ] Worker 13 has to wait Workers waiting: ( 5, 7, 9, 8, 11, 3, 2, 0, 4, 12, 14, 13 ) Worker 1 makes release request [ 3, 0, 0, 4, 0 ] AVAILABLE = [ 16, 8, 0, 17, 0 ] Workers waiting: ( 5, 7, 9, 8, 11, 3, 2, 0, 4, 12, 14, 13 ) Worker 1 makes release request [ 0, 1, 0, 1, 0 ] AVAILABLE = [ 16, 9, 0, 18, 0 ] Workers waiting: ( 5, 7, 9, 8, 11, 3, 2, 0, 4, 12, 14, 13 ) Deadlock detection in progress Finish sequence: 1 4 12 13 0 2 3 5 7 8 9 11 14 No deadlock detected Worker 1 makes allocation request [ 0, 0, 2, 0, 0 ] Worker 1 has to wait Workers waiting: ( 5, 7, 9, 8, 11, 3, 2, 0, 4, 12, 14, 13, 1 ) Deadlock detection in progress Finish sequence: Deadlock detected Allocation status: 0:10 1:6 2:5 3:0 4:1 5:0 7:4 8:0 9:3 11:1 12:8 13:2 14:1 Preempting resources from worker 0 with 10 resources Worker 9 granted pending request [ 0, 0, 0, 0, 3 ] AVAILABLE = [ 19, 9, 0, 19, 3 ] Worker 3 granted pending request [ 0, 0, 0, 0, 3 ] AVAILABLE = [ 19, 9, 0, 19, 0 ] Deadlock detection in progress Finish sequence: 3 0 9 Deadlock detected Allocation status: 1:6 2:5 4:1 5:0 7:4 8:0 11:1 12:8 13:2 14:1 Preempting resources from worker 12 with 8 resources Deadlock detection in progress Finish sequence: 3 0 9 Deadlock detected Allocation status: 1:6 2:5 4:1 5:0 7:4 8:0 11:1 12:0 13:2 14:1 Preempting resources from worker 1 with 6 resources Worker 4 granted pending request [ 0, 3, 3, 0, 2 ] AVAILABLE = [ 22, 9, 0, 22, 0 ] Deadlock detection in progress Finish sequence: 3 0 4 1 2 5 7 8 9 11 12 13 14 No deadlock detected Worker 4 makes allocation request [ 0, 1, 0, 0, 0 ] Worker 4 granted request AVAILABLE = [ 22, 8, 0, 22, 0 ] Worker 9 makes release request [ 0, 0, 0, 0, 5 ] AVAILABLE = [ 22, 8, 0, 22, 5 ] Workers waiting: ( 5, 7, 8, 11, 2, 0, 12, 14, 13, 1 ) Worker 0 granted pending request [ 0, 0, 0, 3, 3 ] AVAILABLE = [ 22, 8, 0, 19, 2 ] Worker 9 makes release request [ 0, 0, 0, 1, 0 ] AVAILABLE = [ 22, 8, 0, 20, 2 ] Workers waiting: ( 5, 7, 8, 11, 2, 12, 14, 13, 1 ) Worker 4 makes release request [ 0, 3, 0, 0, 2 ] AVAILABLE = [ 22, 11, 0, 20, 4 ] Workers waiting: ( 5, 7, 8, 11, 2, 12, 14, 13, 1 ) Worker 0 makes allocation request [ 0, 0, 3, 2, 0 ] Worker 0 has to wait Workers waiting: ( 5, 7, 8, 11, 2, 12, 14, 13, 1, 0 ) Deadlock detection in progress Finish sequence: 3 4 0 1 2 5 7 8 9 11 12 13 14 No deadlock detected Worker 4 going to quit Releasing allocation [ 0, 1, 3, 1, 0 ] AVAILABLE = [ 22, 12, 3, 21, 4 ] Workers waiting: ( 5, 7, 8, 11, 2, 12, 14, 13, 1, 0 ) Worker 5 granted pending request [ 0, 0, 2, 0, 3 ] AVAILABLE = [ 22, 12, 1, 21, 1 ] Worker 14 granted pending request [ 3, 3, 1, 2, 0 ] AVAILABLE = [ 19, 9, 0, 19, 1 ] Worker 3 makes release request [ 0, 0, 0, 0, 3 ] AVAILABLE = [ 19, 9, 0, 19, 4 ] Workers waiting: ( 7, 8, 11, 2, 12, 13, 1, 0 ) Worker 9 makes allocation request [ 0, 1, 0, 0, 0 ] Worker 9 granted request AVAILABLE = [ 19, 8, 0, 19, 4 ] Worker 5 makes release request [ 0, 0, 1, 0, 3 ] AVAILABLE = [ 19, 8, 1, 19, 7 ] Workers waiting: ( 7, 8, 11, 2, 12, 13, 1, 0 ) Worker 8 granted pending request [ 1, 0, 1, 0, 3 ] AVAILABLE = [ 18, 8, 0, 19, 4 ] Worker 14 makes allocation request [ 2, 0, 0, 0, 2 ] Worker 14 granted request AVAILABLE = [ 16, 8, 0, 19, 2 ] Worker 5 makes allocation request [ 2, 3, 0, 0, 0 ] Worker 5 granted request AVAILABLE = [ 14, 5, 0, 19, 2 ] Worker 8 makes allocation request [ 0, 2, 0, 0, 0 ] Worker 8 granted request AVAILABLE = [ 14, 3, 0, 19, 2 ] Worker 14 makes release request [ 0, 0, 0, 0, 2 ] AVAILABLE = [ 14, 3, 0, 19, 4 ] Workers waiting: ( 7, 11, 2, 12, 13, 1, 0 ) Worker 3 makes allocation request [ 0, 0, 0, 3, 0 ] Worker 3 granted request AVAILABLE = [ 14, 3, 0, 16, 4 ] Worker 5 makes allocation request [ 2, 2, 0, 2, 0 ] Worker 5 granted request AVAILABLE = [ 12, 1, 0, 14, 4 ] Worker 8 makes allocation request [ 0, 0, 2, 1, 1 ] Worker 8 has to wait Workers waiting: ( 7, 11, 2, 12, 13, 1, 0, 8 ) Deadlock detection in progress Finish sequence: 3 5 9 11 14 1 2 0 7 8 12 13 No deadlock detected Worker 5 makes release request [ 2, 0, 1, 0, 0 ] AVAILABLE = [ 14, 1, 1, 14, 4 ] Workers waiting: ( 7, 11, 2, 12, 13, 1, 0, 8 ) Worker 11 granted pending request [ 3, 0, 1, 0, 3 ] AVAILABLE = [ 11, 1, 0, 14, 1 ] Worker 14 makes allocation request [ 1, 0, 0, 0, 0 ] Worker 14 granted request AVAILABLE = [ 10, 1, 0, 14, 1 ] Worker 9 makes allocation request [ 2, 0, 0, 0, 0 ] Worker 9 granted request AVAILABLE = [ 8, 1, 0, 14, 1 ] Worker 14 makes release request [ 0, 0, 1, 0, 0 ] AVAILABLE = [ 8, 1, 1, 14, 1 ] Workers waiting: ( 7, 2, 12, 13, 1, 0, 8 ) Worker 11 makes allocation request [ 0, 0, 0, 0, 3 ] Worker 11 has to wait Workers waiting: ( 7, 2, 12, 13, 1, 0, 8, 11 ) Worker 5 makes allocation request [ 1, 2, 0, 0, 0 ] Worker 5 has to wait Workers waiting: ( 7, 2, 12, 13, 1, 0, 8, 11, 5 ) Worker 3 makes release request [ 0, 0, 0, 1, 0 ] AVAILABLE = [ 8, 1, 1, 15, 1 ] Workers waiting: ( 7, 2, 12, 13, 1, 0, 8, 11, 5 ) Worker 14 makes release request [ 5, 3, 0, 0, 0 ] AVAILABLE = [ 13, 4, 1, 15, 1 ] Workers waiting: ( 7, 2, 12, 13, 1, 0, 8, 11, 5 ) Worker 5 granted pending request [ 1, 2, 0, 0, 0 ] AVAILABLE = [ 12, 2, 1, 15, 1 ] Deadlock detection in progress Finish sequence: 3 5 9 14 Deadlock detected Allocation status: 0:6 1:0 2:5 7:4 8:7 11:8 12:0 13:2 Preempting resources from worker 11 with 8 resources Worker 7 granted pending request [ 0, 0, 2, 0, 3 ] AVAILABLE = [ 15, 3, 0, 15, 1 ] Deadlock detection in progress Finish sequence: 3 5 7 0 1 2 8 9 11 12 13 14 No deadlock detected Worker 5 makes release request [ 0, 1, 0, 1, 0 ] AVAILABLE = [ 15, 4, 0, 16, 1 ] Workers waiting: ( 2, 12, 13, 1, 0, 8, 11 ) Worker 14 makes release request [ 1, 0, 0, 0, 0 ] AVAILABLE = [ 16, 4, 0, 16, 1 ] Workers waiting: ( 2, 12, 13, 1, 0, 8, 11 ) Worker 3 makes release request [ 0, 0, 0, 2, 0 ] AVAILABLE = [ 16, 4, 0, 18, 1 ] Workers waiting: ( 2, 12, 13, 1, 0, 8, 11 ) Worker 9 makes allocation request [ 2, 0, 1, 0, 3 ] Worker 9 has to wait Workers waiting: ( 2, 12, 13, 1, 0, 8, 11, 9 ) Worker 7 makes release request [ 0, 0, 4, 0, 0 ] AVAILABLE = [ 16, 4, 4, 18, 1 ] Workers waiting: ( 2, 12, 13, 1, 0, 8, 11, 9 ) Worker 12 granted pending request [ 0, 2, 3, 1, 0 ] AVAILABLE = [ 16, 2, 1, 17, 1 ] Worker 14 going to quit Releasing allocation [ 0, 0, 0, 3, 0 ] AVAILABLE = [ 16, 2, 1, 20, 1 ] Workers waiting: ( 2, 13, 1, 0, 8, 11, 9 ) Worker 12 makes release request [ 0, 0, 0, 1, 0 ] AVAILABLE = [ 16, 2, 1, 21, 1 ] Workers waiting: ( 2, 13, 1, 0, 8, 11, 9 ) Worker 5 makes allocation request [ 3, 1, 2, 0, 0 ] Worker 5 has to wait Workers waiting: ( 2, 13, 1, 0, 8, 11, 9, 5 ) Worker 7 makes release request [ 0, 0, 1, 0, 0 ] AVAILABLE = [ 16, 2, 2, 21, 1 ] Workers waiting: ( 2, 13, 1, 0, 8, 11, 9, 5 ) Worker 13 granted pending request [ 0, 0, 2, 1, 0 ] AVAILABLE = [ 16, 2, 0, 20, 1 ] Deadlock detection in progress Finish sequence: 3 7 9 11 12 0 1 2 5 8 13 No deadlock detected Worker 12 makes release request [ 0, 2, 2, 0, 0 ] AVAILABLE = [ 16, 4, 2, 20, 1 ] Workers waiting: ( 2, 1, 0, 8, 11, 9, 5 ) Worker 1 granted pending request [ 0, 0, 2, 0, 0 ] AVAILABLE = [ 16, 4, 0, 20, 1 ] Worker 7 makes release request [ 0, 0, 0, 0, 1 ] AVAILABLE = [ 16, 4, 0, 20, 2 ] Workers waiting: ( 2, 0, 8, 11, 9, 5 ) Worker 13 going to quit Releasing allocation [ 0, 0, 2, 2, 1 ] AVAILABLE = [ 16, 4, 2, 22, 3 ] Workers waiting: ( 2, 0, 8, 11, 9, 5 ) Worker 2 granted pending request [ 0, 3, 2, 2, 3 ] AVAILABLE = [ 16, 1, 0, 20, 0 ] Worker 12 makes release request [ 0, 0, 1, 0, 0 ] AVAILABLE = [ 16, 1, 1, 20, 0 ] Workers waiting: ( 0, 8, 11, 9, 5 ) Worker 3 makes allocation request [ 1, 0, 0, 2, 1 ] Worker 3 has to wait Workers waiting: ( 0, 8, 11, 9, 5, 3 ) Worker 2 makes release request [ 0, 0, 5, 2, 2 ] AVAILABLE = [ 16, 1, 6, 22, 2 ] Workers waiting: ( 0, 8, 11, 9, 5, 3 ) Worker 0 granted pending request [ 0, 0, 3, 2, 0 ] AVAILABLE = [ 16, 1, 3, 20, 2 ] Worker 8 granted pending request [ 0, 0, 2, 1, 1 ] AVAILABLE = [ 16, 1, 1, 19, 1 ] Worker 3 granted pending request [ 1, 0, 0, 2, 1 ] AVAILABLE = [ 15, 1, 1, 17, 0 ] Worker 7 makes release request [ 0, 0, 1, 0, 1 ] AVAILABLE = [ 15, 1, 2, 17, 1 ] Workers waiting: ( 11, 9, 5 ) Worker 5 granted pending request [ 3, 1, 2, 0, 0 ] AVAILABLE = [ 12, 0, 0, 17, 1 ] Worker 12 makes allocation request [ 0, 3, 1, 0, 0 ] Worker 12 has to wait Workers waiting: ( 11, 9, 12 ) Deadlock detection in progress Finish sequence: 0 1 2 3 5 7 8 9 11 12 No deadlock detected Worker 3 makes allocation request [ 0, 0, 1, 0, 2 ] Worker 3 has to wait Workers waiting: ( 11, 9, 12, 3 ) Worker 2 makes release request [ 0, 0, 0, 0, 1 ] AVAILABLE = [ 12, 0, 0, 17, 2 ] Workers waiting: ( 11, 9, 12, 3 ) Worker 5 makes allocation request [ 0, 0, 2, 0, 0 ] Worker 5 has to wait Workers waiting: ( 11, 9, 12, 3, 5 ) Worker 8 makes release request [ 0, 2, 0, 1, 3 ] AVAILABLE = [ 12, 2, 0, 18, 5 ] Workers waiting: ( 11, 9, 12, 3, 5 ) Worker 11 granted pending request [ 0, 0, 0, 0, 3 ] AVAILABLE = [ 12, 2, 0, 18, 2 ] Worker 0 makes release request [ 0, 0, 0, 1, 0 ] AVAILABLE = [ 12, 2, 0, 19, 2 ] Workers waiting: ( 9, 12, 3, 5 ) Worker 8 going to quit Releasing allocation [ 1, 0, 3, 0, 1 ] AVAILABLE = [ 13, 2, 3, 19, 3 ] Workers waiting: ( 9, 12, 3, 5 ) Worker 9 granted pending request [ 2, 0, 1, 0, 3 ] AVAILABLE = [ 11, 2, 2, 19, 0 ] Worker 5 granted pending request [ 0, 0, 2, 0, 0 ] AVAILABLE = [ 11, 2, 0, 19, 0 ] Worker 0 makes release request [ 0, 0, 0, 0, 1 ] AVAILABLE = [ 11, 2, 0, 19, 1 ] Workers waiting: ( 12, 3 ) Worker 5 makes allocation request [ 0, 1, 0, 0, 0 ] Worker 5 granted request AVAILABLE = [ 11, 1, 0, 19, 1 ] Worker 0 makes release request [ 0, 0, 2, 0, 0 ] AVAILABLE = [ 11, 1, 2, 19, 1 ] Workers waiting: ( 12, 3 ) Worker 2 makes allocation request [ 0, 0, 2, 0, 0 ] Worker 2 granted request AVAILABLE = [ 11, 1, 0, 19, 1 ] Worker 9 makes release request [ 0, 1, 0, 0, 3 ] AVAILABLE = [ 11, 2, 0, 19, 4 ] Workers waiting: ( 12, 3 ) Worker 11 makes allocation request [ 0, 0, 0, 0, 1 ] Worker 11 granted request AVAILABLE = [ 11, 2, 0, 19, 3 ] Worker 0 makes allocation request [ 0, 1, 0, 0, 0 ] Worker 0 granted request AVAILABLE = [ 11, 1, 0, 19, 3 ] Worker 5 makes release request [ 0, 0, 3, 0, 0 ] AVAILABLE = [ 11, 1, 3, 19, 3 ] Workers waiting: ( 12, 3 ) Worker 3 granted pending request [ 0, 0, 1, 0, 2 ] AVAILABLE = [ 11, 1, 2, 19, 1 ] Deadlock detection in progress Finish sequence: 0 1 2 3 5 7 9 11 12 No deadlock detected Worker 5 makes allocation request [ 0, 3, 3, 2, 0 ] Worker 5 has to wait Workers waiting: ( 12, 5 ) Worker 0 makes release request [ 0, 0, 0, 0, 2 ] AVAILABLE = [ 11, 1, 2, 19, 3 ] Workers waiting: ( 12, 5 ) Worker 11 makes allocation request [ 0, 0, 0, 0, 1 ] Worker 11 granted request AVAILABLE = [ 11, 1, 2, 19, 2 ] Worker 1 makes allocation request [ 3, 0, 0, 0, 0 ] Worker 1 granted request AVAILABLE = [ 8, 1, 2, 19, 2 ] Worker 2 makes release request [ 0, 0, 2, 0, 0 ] AVAILABLE = [ 8, 1, 4, 19, 2 ] Workers waiting: ( 12, 5 ) Worker 9 makes allocation request [ 3, 0, 2, 0, 0 ] Worker 9 granted request AVAILABLE = [ 5, 1, 2, 19, 2 ] Worker 7 makes allocation request [ 3, 1, 0, 2, 0 ] Worker 7 granted request AVAILABLE = [ 2, 0, 2, 17, 2 ] Worker 11 makes allocation request [ 0, 0, 0, 1, 0 ] Worker 11 granted request AVAILABLE = [ 2, 0, 2, 16, 2 ] Worker 3 makes release request [ 0, 0, 1, 0, 3 ] AVAILABLE = [ 2, 0, 3, 16, 5 ] Workers waiting: ( 12, 5 ) Worker 2 makes release request [ 0, 3, 0, 0, 1 ] AVAILABLE = [ 2, 3, 3, 16, 6 ] Workers waiting: ( 12, 5 ) Worker 12 granted pending request [ 0, 3, 1, 0, 0 ] AVAILABLE = [ 2, 0, 2, 16, 6 ] Worker 1 makes release request [ 0, 0, 2, 0, 0 ] AVAILABLE = [ 2, 0, 4, 16, 6 ] Workers waiting: ( 5 ) Worker 0 makes release request [ 0, 1, 0, 1, 0 ] AVAILABLE = [ 2, 1, 4, 17, 6 ] Workers waiting: ( 5 ) Worker 7 makes release request [ 0, 0, 0, 2, 0 ] AVAILABLE = [ 2, 1, 4, 19, 6 ] Workers waiting: ( 5 ) Worker 9 makes release request [ 1, 0, 1, 0, 0 ] AVAILABLE = [ 3, 1, 5, 19, 6 ] Workers waiting: ( 5 ) Deadlock detection in progress Finish sequence: 0 1 2 3 7 5 9 11 12 No deadlock detected Worker 12 makes release request [ 0, 0, 1, 0, 0 ] AVAILABLE = [ 3, 1, 6, 19, 6 ] Workers waiting: ( 5 ) Worker 11 makes allocation request [ 0, 0, 0, 3, 0 ] Worker 11 granted request AVAILABLE = [ 3, 1, 6, 16, 6 ] Worker 3 makes allocation request [ 0, 0, 0, 0, 2 ] Worker 3 granted request AVAILABLE = [ 3, 1, 6, 16, 4 ] Worker 0 makes release request [ 0, 0, 1, 1, 0 ] AVAILABLE = [ 3, 1, 7, 17, 4 ] Workers waiting: ( 5 ) Worker 2 makes allocation request [ 0, 1, 2, 1, 2 ] Worker 2 granted request AVAILABLE = [ 3, 0, 5, 16, 2 ] Worker 12 makes release request [ 0, 3, 0, 0, 0 ] AVAILABLE = [ 3, 3, 5, 16, 2 ] Workers waiting: ( 5 ) Worker 5 granted pending request [ 0, 3, 3, 2, 0 ] AVAILABLE = [ 3, 0, 2, 14, 2 ] Worker 3 makes release request [ 0, 0, 0, 0, 2 ] AVAILABLE = [ 3, 0, 2, 14, 4 ] Workers waiting: ( ) Worker 7 makes allocation request [ 0, 0, 0, 1, 0 ] Worker 7 granted request AVAILABLE = [ 3, 0, 2, 13, 4 ] Worker 2 makes allocation request [ 0, 0, 1, 0, 1 ] Worker 2 granted request AVAILABLE = [ 3, 0, 1, 13, 3 ] Worker 3 makes allocation request [ 0, 0, 0, 1, 0 ] Worker 3 granted request AVAILABLE = [ 3, 0, 1, 12, 3 ] Worker 11 makes release request [ 0, 0, 0, 0, 5 ] AVAILABLE = [ 3, 0, 1, 12, 8 ] Workers waiting: ( ) Worker 9 makes release request [ 2, 0, 1, 0, 0 ] AVAILABLE = [ 5, 0, 2, 12, 8 ] Workers waiting: ( ) Worker 5 makes release request [ 6, 0, 3, 0, 0 ] AVAILABLE = [ 11, 0, 5, 12, 8 ] Workers waiting: ( ) Worker 1 makes release request [ 2, 0, 0, 0, 0 ] AVAILABLE = [ 13, 0, 5, 12, 8 ] Workers waiting: ( ) Worker 7 makes allocation request [ 0, 0, 0, 1, 0 ] Worker 7 granted request AVAILABLE = [ 13, 0, 5, 11, 8 ] Worker 2 makes allocation request [ 1, 0, 3, 2, 0 ] Worker 2 granted request AVAILABLE = [ 12, 0, 2, 9, 8 ] Deadlock detection in progress Finish sequence: 0 1 2 3 5 7 9 11 12 No deadlock detected Worker 5 makes allocation request [ 1, 0, 0, 1, 1 ] Worker 5 granted request AVAILABLE = [ 11, 0, 2, 8, 7 ] Worker 2 makes release request [ 0, 0, 0, 0, 2 ] AVAILABLE = [ 11, 0, 2, 8, 9 ] Workers waiting: ( ) Worker 11 makes allocation request [ 0, 0, 0, 2, 3 ] Worker 11 granted request AVAILABLE = [ 11, 0, 2, 6, 6 ] Worker 12 makes allocation request [ 0, 0, 2, 0, 3 ] Worker 12 granted request AVAILABLE = [ 11, 0, 0, 6, 3 ] Worker 7 makes release request [ 2, 0, 0, 0, 0 ] AVAILABLE = [ 13, 0, 0, 6, 3 ] Workers waiting: ( ) Worker 5 makes release request [ 1, 0, 0, 2, 0 ] AVAILABLE = [ 14, 0, 0, 8, 3 ] Workers waiting: ( ) Worker 3 makes release request [ 1, 0, 0, 0, 0 ] AVAILABLE = [ 15, 0, 0, 8, 3 ] Workers waiting: ( ) Worker 0 makes allocation request [ 0, 0, 0, 0, 2 ] Worker 0 granted request AVAILABLE = [ 15, 0, 0, 8, 1 ] Worker 9 makes release request [ 2, 0, 0, 0, 0 ] AVAILABLE = [ 17, 0, 0, 8, 1 ] Workers waiting: ( ) Worker 12 makes release request [ 0, 0, 1, 0, 0 ] AVAILABLE = [ 17, 0, 1, 8, 1 ] Workers waiting: ( ) Worker 11 going to quit Releasing allocation [ 0, 0, 0, 6, 3 ] AVAILABLE = [ 17, 0, 1, 14, 4 ] Workers waiting: ( ) Worker 2 makes allocation request [ 0, 0, 3, 0, 1 ] Worker 2 has to wait Workers waiting: ( 2 ) Worker 7 makes release request [ 1, 0, 0, 1, 0 ] AVAILABLE = [ 18, 0, 1, 15, 4 ] Workers waiting: ( 2 ) Worker 5 makes release request [ 0, 1, 1, 0, 1 ] AVAILABLE = [ 18, 1, 2, 15, 5 ] Workers waiting: ( 2 ) Worker 9 going to quit Releasing allocation [ 2, 0, 1, 0, 0 ] AVAILABLE = [ 20, 1, 3, 15, 5 ] Workers waiting: ( 2 ) Worker 2 granted pending request [ 0, 0, 3, 0, 1 ] AVAILABLE = [ 20, 1, 0, 15, 4 ] Worker 12 makes release request [ 0, 0, 0, 0, 2 ] AVAILABLE = [ 20, 1, 0, 15, 6 ] Workers waiting: ( ) Worker 0 makes allocation request [ 0, 3, 2, 3, 2 ] Worker 0 has to wait Workers waiting: ( 0 ) Deadlock detection in progress Finish sequence: 1 2 0 3 5 7 12 No deadlock detected Worker 1 makes release request [ 1, 0, 0, 0, 0 ] AVAILABLE = [ 21, 1, 0, 15, 6 ] Workers waiting: ( 0 ) Worker 7 makes allocation request [ 0, 2, 0, 0, 0 ] Worker 7 has to wait Workers waiting: ( 0, 7 ) Worker 2 makes release request [ 0, 0, 9, 0, 0 ] AVAILABLE = [ 21, 1, 9, 15, 6 ] Workers waiting: ( 0, 7 ) Worker 5 makes allocation request [ 2, 3, 2, 1, 0 ] Worker 5 has to wait Workers waiting: ( 0, 7, 5 ) Worker 12 makes release request [ 0, 0, 1, 0, 1 ] AVAILABLE = [ 21, 1, 10, 15, 7 ] Workers waiting: ( 0, 7, 5 ) Worker 2 makes allocation request [ 3, 3, 0, 0, 0 ] Worker 2 has to wait Workers waiting: ( 0, 7, 5, 2 ) Worker 3 makes release request [ 0, 0, 0, 3, 0 ] AVAILABLE = [ 21, 1, 10, 18, 7 ] Workers waiting: ( 0, 7, 5, 2 ) Worker 1 makes allocation request [ 0, 1, 1, 2, 2 ] Worker 1 granted request AVAILABLE = [ 21, 0, 9, 16, 5 ] Worker 3 makes allocation request [ 0, 0, 0, 0, 1 ] Worker 3 granted request AVAILABLE = [ 21, 0, 9, 16, 4 ] Deadlock detection in progress Finish sequence: 1 3 12 Deadlock detected Allocation status: 0:4 2:8 5:12 7:3 Preempting resources from worker 5 with 12 resources Worker 0 granted pending request [ 0, 3, 2, 3, 2 ] AVAILABLE = [ 21, 7, 7, 15, 2 ] Worker 7 granted pending request [ 0, 2, 0, 0, 0 ] AVAILABLE = [ 21, 5, 7, 15, 2 ] Worker 5 granted pending request [ 2, 3, 2, 1, 0 ] AVAILABLE = [ 19, 2, 5, 14, 2 ] Deadlock detection in progress Finish sequence: 0 1 2 3 5 7 12 No deadlock detected Worker 1 makes release request [ 0, 0, 0, 1, 0 ] AVAILABLE = [ 19, 2, 5, 15, 2 ] Workers waiting: ( 2 ) Worker 0 makes release request [ 0, 0, 0, 3, 4 ] AVAILABLE = [ 19, 2, 5, 18, 6 ] Workers waiting: ( 2 ) Worker 7 makes release request [ 0, 2, 0, 0, 0 ] AVAILABLE = [ 19, 4, 5, 18, 6 ] Workers waiting: ( 2 ) Worker 2 granted pending request [ 3, 3, 0, 0, 0 ] AVAILABLE = [ 16, 1, 5, 18, 6 ] Worker 3 makes release request [ 0, 0, 0, 0, 1 ] AVAILABLE = [ 16, 1, 5, 18, 7 ] Workers waiting: ( ) Worker 1 going to quit Releasing allocation [ 0, 1, 1, 1, 2 ] AVAILABLE = [ 16, 2, 6, 19, 9 ] Workers waiting: ( ) Worker 5 makes release request [ 0, 0, 1, 0, 0 ] AVAILABLE = [ 16, 2, 7, 19, 9 ] Workers waiting: ( ) Worker 2 going to quit Releasing allocation [ 4, 5, 0, 3, 2 ] AVAILABLE = [ 20, 7, 7, 22, 11 ] Workers waiting: ( ) Worker 0 makes release request [ 0, 1, 0, 0, 0 ] AVAILABLE = [ 20, 8, 7, 22, 11 ] Workers waiting: ( ) Worker 3 makes allocation request [ 0, 0, 1, 3, 1 ] Worker 3 granted request AVAILABLE = [ 20, 8, 6, 19, 10 ] Worker 5 going to quit Releasing allocation [ 2, 3, 1, 1, 0 ] AVAILABLE = [ 22, 11, 7, 20, 10 ] Workers waiting: ( ) Deadlock detection in progress Finish sequence: 0 3 7 12 No deadlock detected Worker 7 makes allocation request [ 0, 3, 0, 0, 0 ] Worker 7 granted request AVAILABLE = [ 22, 8, 7, 20, 10 ] Worker 0 makes release request [ 0, 0, 0, 2, 0 ] AVAILABLE = [ 22, 8, 7, 22, 10 ] Workers waiting: ( ) Worker 3 makes release request [ 0, 0, 0, 0, 1 ] AVAILABLE = [ 22, 8, 7, 22, 11 ] Workers waiting: ( ) Worker 12 makes allocation request [ 0, 1, 3, 0, 2 ] Worker 12 granted request AVAILABLE = [ 22, 7, 4, 22, 9 ] Worker 7 makes release request [ 0, 0, 0, 1, 0 ] AVAILABLE = [ 22, 7, 4, 23, 9 ] Workers waiting: ( ) Worker 3 going to quit Releasing allocation [ 0, 0, 1, 3, 0 ] AVAILABLE = [ 22, 7, 5, 26, 9 ] Workers waiting: ( ) Worker 7 makes allocation request [ 0, 1, 3, 0, 1 ] Worker 7 granted request AVAILABLE = [ 22, 6, 2, 26, 8 ] Deadlock detection in progress Finish sequence: 0 7 12 No deadlock detected Worker 12 makes release request [ 0, 1, 0, 0, 0 ] AVAILABLE = [ 22, 7, 2, 26, 8 ] Workers waiting: ( ) Worker 7 going to quit Releasing allocation [ 0, 5, 3, 0, 2 ] AVAILABLE = [ 22, 12, 5, 26, 10 ] Workers waiting: ( ) Worker 0 makes release request [ 0, 2, 2, 0, 0 ] AVAILABLE = [ 22, 14, 7, 26, 10 ] Workers waiting: ( ) Worker 12 makes allocation request [ 0, 2, 2, 2, 0 ] Worker 12 granted request AVAILABLE = [ 22, 12, 5, 24, 10 ] Worker 0 going to quit Releasing allocation [ 0, 0, 0, 0, 0 ] AVAILABLE = [ 22, 12, 5, 24, 10 ] Workers waiting: ( ) Deadlock detection in progress Finish sequence: 12 No deadlock detected Worker 12 makes release request [ 0, 2, 0, 1, 2 ] AVAILABLE = [ 22, 14, 5, 25, 12 ] Workers waiting: ( ) Worker 12 going to quit Releasing allocation [ 0, 0, 5, 1, 0 ] AVAILABLE = [ 22, 14, 10, 26, 12 ] Workers waiting: ( ) All workers left