wongerlt Posted July 18, 2017 Posted July 18, 2017 Hello, Some time when starting match teleport two teams to same arena. And i can't find problem. here how work: for (int i = 0; i < STADIUMS.length; i++) { .. .. .... ..... if (STADIUMS[i].isFreeToUse()){ ... ..... ..... ....... try { _olympiadInstances.put(i, new OlympiadGame(i, COMP_TYPE.NON_CLASSED, nextOpponents(Olympiad.getRegisteredNonClassBased()))); _gamesQueue.put(i, new OlympiadGameTask(_olympiadInstances.get(i))); STADIUMS[i].setStadiaBusy(); } ..... ........ Why can set same stadium id? firstly it check is free or no, then if free set stadium to busy.
0 melron Posted July 18, 2017 Posted July 18, 2017 What's your pack? maybe it's about synchronization in olympiad instances
0 wongerlt Posted July 18, 2017 Author Posted July 18, 2017 (edited) frozen What's your pack? maybe it's about synchronization in olympiad instances and its synchronized i see upper for (int i = 0; i < STADIUMS.length; i++) public synchronized void run() { Edited July 18, 2017 by wongerlt
Question
wongerlt
Hello,
Some time when starting match teleport two teams to same arena. And i can't find problem.
here how work:
for (int i = 0; i < STADIUMS.length; i++) { .. .. .... ..... if (STADIUMS[i].isFreeToUse()){ ... ..... ..... ....... try { _olympiadInstances.put(i, new OlympiadGame(i, COMP_TYPE.NON_CLASSED, nextOpponents(Olympiad.getRegisteredNonClassBased()))); _gamesQueue.put(i, new OlympiadGameTask(_olympiadInstances.get(i))); STADIUMS[i].setStadiaBusy(); } ..... ........Why can set same stadium id? firstly it check is free or no, then if free set stadium to busy.
2 answers to this question
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now