X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/41ac7e58ef132dea8cea9addf213671ae38229ac..3189d7d6aafade3860d50252491bb52adbb7b262:/examples/java/mutualExclusion/Coordinator.java diff --git a/examples/java/mutualExclusion/Coordinator.java b/examples/java/mutualExclusion/Coordinator.java index ad62a602c4..f605279144 100644 --- a/examples/java/mutualExclusion/Coordinator.java +++ b/examples/java/mutualExclusion/Coordinator.java @@ -1,52 +1,50 @@ -/* - * 2012. The SimGrid Team. All rights reserved. - * - * This program is free software; you can redistribute it and/or modify it - * under the terms of the license (GNU LGPL) which comes with this package. - */ +/* Copyright (c) 2012-2014, 2016. The SimGrid Team. + * All rights reserved. */ -package mutualExclusion.centralized; +/* This program is free software; you can redistribute it and/or modify it + * under the terms of the license (GNU LGPL) which comes with this package. */ + +package mutualExclusion; import java.util.LinkedList; -import org.simgrid.msg.Host; import org.simgrid.msg.Msg; -import org.simgrid.msg.MsgException; +import org.simgrid.msg.Host; import org.simgrid.msg.Task; import org.simgrid.msg.Process; +import org.simgrid.msg.MsgException; +public class Coordinator extends Process { + public Coordinator(Host host, String name, String[]args) { + super(host,name,args); + } + LinkedList waitingQueue=new LinkedList(); + int CsToServe; -public class Coordinator extends Process { - public Coordinator(Host host, String name, String[]args) { - super(host,name,args); - } - LinkedList waitingQueue=new LinkedList(); - int CsToServe; - - public void main(String[] args) throws MsgException { - CsToServe = Integer.parseInt(args[0]); - Task task; - while (CsToServe >0) { - task = Task.receive("coordinator"); - if (task instanceof RequestTask) { - RequestTask t = (RequestTask) task; - if (waitingQueue.isEmpty()) { - Msg.info("Got a request from "+t.from+". Queue empty: grant it"); - GrantTask tosend = new GrantTask(); - tosend.send(t.from); - } else { - waitingQueue.addFirst(t); - } - } else if (task instanceof ReleaseTask) { - if (!waitingQueue.isEmpty()) { - RequestTask req = waitingQueue.removeLast(); - GrantTask tosend = new GrantTask(); - tosend.send(req.from); - } - CsToServe--; - if (waitingQueue.isEmpty() && CsToServe==0) { - Msg.info("we should shutdown the simulation now"); - } - } - } - } + public void main(String[] args) throws MsgException { + CsToServe = Integer.parseInt(args[0]); + Task task; + while (CsToServe >0) { + task = Task.receive("coordinator"); + if (task instanceof RequestTask) { + RequestTask t = (RequestTask) task; + if (waitingQueue.isEmpty()) { + Msg.info("Got a request from "+t.from+". Queue empty: grant it"); + GrantTask tosend = new GrantTask(); + tosend.send(t.from); + } else { + waitingQueue.addFirst(t); + } + } else if (task instanceof ReleaseTask) { + if (!waitingQueue.isEmpty()) { + RequestTask req = waitingQueue.removeLast(); + GrantTask tosend = new GrantTask(); + tosend.send(req.from); + } + CsToServe--; + if (waitingQueue.isEmpty() && CsToServe==0) { + Msg.info("we should shutdown the simulation now"); + } + } + } + } }