[Home]MacOSX/Deadlock

Robo Home | MacOSX | Changes | Preferences | AllPages

Tron 1.32 somehow causes a deadlock on my computer.
It doesn't happen every round, but nearly always happens in one of the first 20 or so.
I've only had it occur in 1v1, but it's possible it could happen in melees as well.
Attempts to force quit cause the java VM to dump the following information:
FOUND A JAVA LEVEL DEADLOCK:
----------------------------
"abc.Tron 1.32":
  waiting to lock monitor 0x4b55c (object 0x68521ce8, a robocode.battle.Battle),
  which is locked by "Battle Thread"
"Battle Thread":
  waiting to lock monitor 0x4b5ac (object 0x68522510, a robocode.peer.RobotPeer),
  which is locked by "abc.Tron 1.32"

JAVA STACK INFORMATION FOR THREADS LISTED ABOVE:
------------------------------------------------
Java Stack for "abc.Tron 1.32":
==========
	at robocode.battle.Battle.getActiveRobots(Battle.java:1043)
	at robocode.peer.RobotPeer.getOthers(RobotPeer.java:528)
	at robocode.Robot.getOthers(Robot.java:444)
	at abc.Tron.calcBulletPower(Tron.java:785)
	at abc.Tron$bInfoLog.getGunAngle(Tron.java:1022)
	at abc.Tron$bInfoLog.findBestMatch(Tron.java:978)
	at abc.Tron.aimGun(Tron.java:804)
	at abc.Tron.run(Tron.java:329)
	at robocode.peer.RobotPeer.run(RobotPeer.java:616)
	at java.lang.Thread.run(Thread.java:491)
Java Stack for "Battle Thread":
==========
	at robocode.peer.RobotPeer.isDead(RobotPeer.java:588)
	at robocode.battle.Battle.oneTeamRemaining(Battle.java:1056)
	at robocode.battle.Battle.checkBattleOver(Battle.java:677)
	at robocode.battle.Battle.runRound(Battle.java:468)
	at robocode.battle.Battle.run(Battle.java:110)
	at java.lang.Thread.run(Thread.java:491)

Found 1 deadlock.

I have no clue if this is a problem w/ OS X's java or with Robocode, put I'm posting it so someone with more experience than I can figure it out.

--Hanji


Robo Home | MacOSX | Changes | Preferences | AllPages
Edit text of this page | View other revisions
Last edited April 20, 2003 15:47 EST by Hanji (diff)
Search: