![]() |
[Java] threads probleem
Ik ben voor school spaceinvaders aan het bouwen. Nu kreeg ik de volgende error als ik probeer een kogel aan te maken (door op spaciebalk te duwen).
Exception in thread "Thread-2" java.util.ConcurrentModificationException at java.util.AbstractList$Itr.checkForComodification(AbstractList.java:44 9) at java.util.AbstractList$Itr.next(AbstractList.java:420) at spaceinvaders.Game.update(Unknown Source) at spaceinvaders.Game.run(Unknown Source) at java.lang.Thread.run(Thread.java:595) Ik denk dat het fout gaat omdat er op het ene punt variabele fire gelezen wordt, en op de andere plek geschreven. Zoiets zou je op moeten lossen met synchronize of lock ofzo, maar als ik dat doe: PHP-code:
Ik heb geen idee hoe ik dit op moet lossen. Sources: http://merops.njn.nl/~vasco/java/spaceinvaders/ |
Citaat:
PHP-code:
|
Dankjewel!
Hmm, blijkbaar zat het toch niet met die fire. Het komt wss omdat ik dan eindelijk een kogel in mijn lijst met kogels heb. Waarschijnlijk hgaat het verwerken daarvan fout, maar ik zie absoluut niet hoe: PHP-code:
|
Kijk maar eens naar deze pagina:
http://java.sun.com/j2se/1.5.0/docs/...ArrayList.html Hier staat onder andere: Citaat:
|
A fijn, dat was het dus. Heb dat nu gefixt. Het volgende probleem wat ik heb is dat mijn scheepje wegvliegt als ik op spacebar duw. Dit gebeurd ergens in Game.java:194. Hierna zijn opeens de variabelen van mijn scheepje (ship.pos) aangepast :S Iemand een idee hoe dit komt?
|
Citaat:
http://www.cs.toronto.edu/~dianeh/tutorials/params/ Je geeft steeds een positie array door als parameter. Binnen de methodes van je applet worden deze posities veranderd omdat een array doorgegeven wordt als een verwijzing (of eigenlijk is het zelf een verwijzing). Tenminste, ik denk dat dat het punt is. |
Citaat:
|
Ben nu een stuk verder, http://merops.njn.nl/~vasco/java/Game.html, maar door het een of andere heb ik ruzie in Alien.java:76 , hij wil daar geen image object aanmaken:
lien.java:76: cannot find symbol [javac] symbol : method getImage(java.net.URL) [javac] location: class spaceinvaders.Alien [javac] img = getImage(tmp); |
Citaat:
De Toolkit klasse heeft ook een getImage(URL) methode: http://scv.bu.edu/Doc/Java/tutorial/...ingImages.html |
Citaat:
|
Alle tijden zijn GMT +1. Het is nu 18:37. |
Powered by vBulletin® Version 3.8.8
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.