<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>http://robowiki.net/w/index.php?action=history&amp;feed=atom&amp;title=Thread%3ATalk%3ARoboRumble%2FThreadDeath_problem</id>
	<title>Thread:Talk:RoboRumble/ThreadDeath problem - Revision history</title>
	<link rel="self" type="application/atom+xml" href="http://robowiki.net/w/index.php?action=history&amp;feed=atom&amp;title=Thread%3ATalk%3ARoboRumble%2FThreadDeath_problem"/>
	<link rel="alternate" type="text/html" href="http://robowiki.net/w/index.php?title=Thread:Talk:RoboRumble/ThreadDeath_problem&amp;action=history"/>
	<updated>2026-04-19T02:29:31Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.34.1</generator>
	<entry>
		<id>http://robowiki.net/w/index.php?title=Thread:Talk:RoboRumble/ThreadDeath_problem&amp;diff=51237&amp;oldid=prev</id>
		<title>Beaming: New thread: ThreadDeath problem</title>
		<link rel="alternate" type="text/html" href="http://robowiki.net/w/index.php?title=Thread:Talk:RoboRumble/ThreadDeath_problem&amp;diff=51237&amp;oldid=prev"/>
		<updated>2017-09-05T01:41:09Z</updated>

		<summary type="html">&lt;p&gt;New thread: ThreadDeath problem&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;I decided to put a bit more info about the ThreadDeath problem.&lt;br /&gt;
The offending log entry would look like&lt;br /&gt;
 &amp;lt;pre&amp;gt;&lt;br /&gt;
Round 4 of 10&lt;br /&gt;
=========================&lt;br /&gt;
java.lang.ThreadDeath&lt;br /&gt;
	at java.lang.Thread.stop(Thread.java:853)&lt;br /&gt;
	at net.sf.robocode.host.security.RobotThreadManager.stop(RobotThreadManager.java:190)&lt;br /&gt;
	at net.sf.robocode.host.security.RobotThreadManager.stopSteps(RobotThreadManager.java:172)&lt;br /&gt;
	at net.sf.robocode.host.security.RobotThreadManager.forceStop(RobotThreadManager.java:143)&lt;br /&gt;
	at net.sf.robocode.host.proxies.HostingRobotProxy.forceStopThread(HostingRobotProxy.java:144)&lt;br /&gt;
	at net.sf.robocode.host.proxies.BasicRobotProxy.forceStopThread(BasicRobotProxy.java:44)&lt;br /&gt;
	at net.sf.robocode.battle.peer.RobotPeer.checkSkippedTurn(RobotPeer.java:649)&lt;br /&gt;
	at net.sf.robocode.battle.peer.RobotPeer.executeImpl(RobotPeer.java:492)&lt;br /&gt;
	at net.sf.robocode.host.proxies.BasicRobotProxy.executeImpl(BasicRobotProxy.java:384)&lt;br /&gt;
	at net.sf.robocode.host.proxies.BasicRobotProxy.execute(BasicRobotProxy.java:122)&lt;br /&gt;
	at robocode.AdvancedRobot.execute(AdvancedRobot.java:552)&lt;br /&gt;
	at eem.frame.gameInfo.gameInfo.run(gameInfo.java:95)&lt;br /&gt;
	at eem.frame.core.CoreBot.run(CoreBot.java:206)&lt;br /&gt;
	at net.sf.robocode.host.proxies.HostingRobotProxy.callUserCode(HostingRobotProxy.java:274)&lt;br /&gt;
	at net.sf.robocode.host.proxies.HostingRobotProxy.run(HostingRobotProxy.java:221)&lt;br /&gt;
	at net.sf.robocode.host.proxies.BasicRobotProxy.run(BasicRobotProxy.java:44)&lt;br /&gt;
	at java.lang.Thread.run(Thread.java:748)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Note that something was very wrong. My bot did not received even SYSTEM onDeath event as can be seen in the more complete log below. Though, my bot was counted as a looser for the first 3 rounds by the other bot. Also, my bot outputted some log during rounds 1 to 4, so the error happens somewhere during the round and steal control from the bot.&lt;br /&gt;
Also note some time profiling at the end, many methods report max as a factor of 100 times more than an average time. I.e. some catastrophic event happend. One issue that the number of operation is different in every method execution, but I bet not by factor of 100.&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;pre&amp;gt;&lt;br /&gt;
=========================&lt;br /&gt;
Round 1 of 10&lt;br /&gt;
=========================&lt;br /&gt;
=========== Round #1=============&lt;br /&gt;
100007 best target penguin.Joker .611wr&lt;br /&gt;
SYSTEM: EvBotNG vtest skipped turn 19&lt;br /&gt;
Skipped turn 19 reported at 100020&lt;br /&gt;
SYSTEM: EvBotNG vtest skipped turn 32&lt;br /&gt;
Skipped turn 32 reported at 100033&lt;br /&gt;
100221: penguin.Joker .611wr hit eem.EvBotNG vtest at GF = -0.6450138864756005 with real bullet&lt;br /&gt;
100314: penguin.Joker .611wr hit eem.EvBotNG vtest at GF = -0.2827484567498845 with real bullet&lt;br /&gt;
100387: penguin.Joker .611wr hit eem.EvBotNG vtest at GF = -0.20989274379107656 with real bullet&lt;br /&gt;
100431: penguin.Joker .611wr hit eem.EvBotNG vtest at GF = 0.19347401753112997 with real bullet&lt;br /&gt;
=========================&lt;br /&gt;
Round 2 of 10&lt;br /&gt;
=========================&lt;br /&gt;
=========== Round #2=============&lt;br /&gt;
Probing new bullet energy 1.95&lt;br /&gt;
SYSTEM: EvBotNG vtest skipped turn 8&lt;br /&gt;
Skipped turn 8 reported at 200009&lt;br /&gt;
200055: penguin.Joker .611wr hit eem.EvBotNG vtest at GF = 0.3557362360118722 with real bullet&lt;br /&gt;
200307: penguin.Joker .611wr hit eem.EvBotNG vtest at GF = 0.08198800256947705 with real bullet&lt;br /&gt;
200335: penguin.Joker .611wr hit eem.EvBotNG vtest at GF = 0.06521832333874987 with real bullet&lt;br /&gt;
penguin.Joker .611wr hit enemy: eem.EvBotNG vtest with gun: circularGun fired at dist: 566.5311086790286&lt;br /&gt;
200354: penguin.Joker .611wr hit eem.EvBotNG vtest at GF = -0.10610623841145142 with real bullet&lt;br /&gt;
SYSTEM: EvBotNG vtest skipped turn 396&lt;br /&gt;
Skipped turn 396 reported at 200397&lt;br /&gt;
=========================&lt;br /&gt;
Round 3 of 10&lt;br /&gt;
=========================&lt;br /&gt;
java.lang.ThreadDeath&lt;br /&gt;
	at java.lang.Thread.stop(Thread.java:853)&lt;br /&gt;
	at net.sf.robocode.host.security.RobotThreadManager.stop(RobotThreadManager.java:190)&lt;br /&gt;
	at net.sf.robocode.host.security.RobotThreadManager.stopSteps(RobotThreadManager.java:172)&lt;br /&gt;
	at net.sf.robocode.host.security.RobotThreadManager.forceStop(RobotThreadManager.java:143)&lt;br /&gt;
	at net.sf.robocode.host.proxies.HostingRobotProxy.forceStopThread(HostingRobotProxy.java:144)&lt;br /&gt;
	at net.sf.robocode.host.proxies.BasicRobotProxy.forceStopThread(BasicRobotProxy.java:44)&lt;br /&gt;
	at net.sf.robocode.battle.peer.RobotPeer.checkSkippedTurn(RobotPeer.java:649)&lt;br /&gt;
	at net.sf.robocode.battle.peer.RobotPeer.executeImpl(RobotPeer.java:492)&lt;br /&gt;
	at net.sf.robocode.host.proxies.BasicRobotProxy.executeImpl(BasicRobotProxy.java:384)&lt;br /&gt;
	at net.sf.robocode.host.proxies.BasicRobotProxy.execute(BasicRobotProxy.java:122)&lt;br /&gt;
	at robocode.AdvancedRobot.execute(AdvancedRobot.java:552)&lt;br /&gt;
	at eem.frame.gameInfo.gameInfo.run(gameInfo.java:95)&lt;br /&gt;
	at eem.frame.core.CoreBot.run(CoreBot.java:206)&lt;br /&gt;
	at net.sf.robocode.host.proxies.HostingRobotProxy.callUserCode(HostingRobotProxy.java:274)&lt;br /&gt;
	at net.sf.robocode.host.proxies.HostingRobotProxy.run(HostingRobotProxy.java:221)&lt;br /&gt;
	at net.sf.robocode.host.proxies.BasicRobotProxy.run(BasicRobotProxy.java:44)&lt;br /&gt;
	at java.lang.Thread.run(Thread.java:748)&lt;br /&gt;
=========== Round #3=============&lt;br /&gt;
Probing new bullet energy 1.95&lt;br /&gt;
300093: penguin.Joker .611wr hit eem.EvBotNG vtest at GF = 0.37068349323008726 with real bullet&lt;br /&gt;
SYSTEM: EvBotNG vtest skipped turn 156&lt;br /&gt;
Skipped turn 156 reported at 300157&lt;br /&gt;
SYSTEM: EvBotNG vtest skipped turn 191&lt;br /&gt;
Skipped turn 191 reported at 300192&lt;br /&gt;
300301: penguin.Joker .611wr hit eem.EvBotNG vtest at GF = -0.2802401527715257 with real bullet&lt;br /&gt;
300493: penguin.Joker .611wr hit eem.EvBotNG vtest at GF = 0.1975865759018777 with real bullet&lt;br /&gt;
SYSTEM: EvBotNG vtest skipped turn 559&lt;br /&gt;
Skipped turn 559 reported at 300560&lt;br /&gt;
=========================&lt;br /&gt;
Round 4 of 10&lt;br /&gt;
=========================&lt;br /&gt;
java.lang.ThreadDeath&lt;br /&gt;
	at java.lang.Thread.stop(Thread.java:853)&lt;br /&gt;
	at net.sf.robocode.host.security.RobotThreadManager.stop(RobotThreadManager.java:190)&lt;br /&gt;
	at net.sf.robocode.host.security.RobotThreadManager.stopSteps(RobotThreadManager.java:172)&lt;br /&gt;
	at net.sf.robocode.host.security.RobotThreadManager.forceStop(RobotThreadManager.java:143)&lt;br /&gt;
	at net.sf.robocode.host.proxies.HostingRobotProxy.forceStopThread(HostingRobotProxy.java:144)&lt;br /&gt;
	at net.sf.robocode.host.proxies.BasicRobotProxy.forceStopThread(BasicRobotProxy.java:44)&lt;br /&gt;
	at net.sf.robocode.battle.peer.RobotPeer.checkSkippedTurn(RobotPeer.java:649)&lt;br /&gt;
	at net.sf.robocode.battle.peer.RobotPeer.executeImpl(RobotPeer.java:492)&lt;br /&gt;
	at net.sf.robocode.host.proxies.BasicRobotProxy.executeImpl(BasicRobotProxy.java:384)&lt;br /&gt;
	at net.sf.robocode.host.proxies.BasicRobotProxy.execute(BasicRobotProxy.java:122)&lt;br /&gt;
	at robocode.AdvancedRobot.execute(AdvancedRobot.java:552)&lt;br /&gt;
	at eem.frame.gameInfo.gameInfo.run(gameInfo.java:95)&lt;br /&gt;
	at eem.frame.core.CoreBot.run(CoreBot.java:206)&lt;br /&gt;
	at net.sf.robocode.host.proxies.HostingRobotProxy.callUserCode(HostingRobotProxy.java:274)&lt;br /&gt;
	at net.sf.robocode.host.proxies.HostingRobotProxy.run(HostingRobotProxy.java:221)&lt;br /&gt;
	at net.sf.robocode.host.proxies.BasicRobotProxy.run(BasicRobotProxy.java:44)&lt;br /&gt;
	at java.lang.Thread.run(Thread.java:748)&lt;br /&gt;
=========== Round #4=============&lt;br /&gt;
Probing new bullet energy 1.95&lt;br /&gt;
400161: penguin.Joker .611wr hit eem.EvBotNG vtest at GF = 0.6168884721887381 with real bullet&lt;br /&gt;
400292: penguin.Joker .611wr hit eem.EvBotNG vtest at GF = 0.09859694511664721 with real bullet&lt;br /&gt;
400317: penguin.Joker .611wr hit eem.EvBotNG vtest at GF = -0.47485553157064525 with real bullet&lt;br /&gt;
400345: penguin.Joker .611wr hit eem.EvBotNG vtest at GF = 0.2798221445512617 with real bullet&lt;br /&gt;
400476: penguin.Joker .611wr hit eem.EvBotNG vtest at GF = 0.2817195309815388 with real bullet&lt;br /&gt;
400492: penguin.Joker .611wr hit eem.EvBotNG vtest at GF = 0.34782608695652234 with real bullet&lt;br /&gt;
=========================&lt;br /&gt;
Round 5 of 10&lt;br /&gt;
=========================&lt;br /&gt;
=========== Round #5=============&lt;br /&gt;
Probing new bullet energy 1.95&lt;br /&gt;
SYSTEM: Bonus for killing penguin.Joker .611wr: 11&lt;br /&gt;
SYSTEM: eem.EvBotNG vtest wins the round.&lt;br /&gt;
Hit by bullet: [5, 4, 3, 6, 0, 0, 0, 0, 0, 0]&lt;br /&gt;
Wall hits stats: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0]&lt;br /&gt;
Skipped turns stats: [2, 2, 3, 0, 0, 0, 0, 0, 0, 0]&lt;br /&gt;
Hit rate stats:   16/158  =   10.13%&lt;br /&gt;
Bullet hit bullet stats::   10/158  =    6.33%&lt;br /&gt;
Rounds ratio of win/lose = 1/2&lt;br /&gt;
Finishing places stats: [1, 2]&lt;br /&gt;
myWinLosePlace = 0&lt;br /&gt;
My score in this round = 113.4 enemy score = 0.0&lt;br /&gt;
My total score = 176.89999999999998 enemy score = 246.76000000000022&lt;br /&gt;
Round APS stats: [25.01444251877526, 0.0, 0.0, 14.727325750947783, 100.0, 0.0, 0.0, 0.0, 0.0, 0.0]&lt;br /&gt;
Accumulated APS = 41.76%&lt;br /&gt;
--- bot penguin.Joker .611wr stats:&lt;br /&gt;
hit rate for the following bot(s) out of 172 shots&lt;br /&gt;
 eem.EvBotNG vtest:   18/172  =   10.47%&lt;br /&gt;
  My virtual gun hit rate stats stats&lt;br /&gt;
                 enemy name              circularGun                headOnGun              realHitsGun               unknownGun&lt;br /&gt;
          eem.EvBotNG vtest        1/172  =    0.58%        0/172  =    0.00%       18/172  =   10.47%       17/172  =    9.88%&lt;br /&gt;
--- bot eem.EvBotNG vtest stats:&lt;br /&gt;
wrong path prediction count: 7 &amp;lt;------------------------------ improve me!&lt;br /&gt;
Hit me count by the following bot(s)&lt;br /&gt;
 penguin.Joker .611wr:   18/172  =   10.47%&lt;br /&gt;
  Enemies virtual gun stats&lt;br /&gt;
    circularGun of bot penguin.Joker .611wr hit me   12/172  =    6.98%&lt;br /&gt;
    headOnGun of bot penguin.Joker .611wr hit me   13/172  =    7.56%&lt;br /&gt;
    realHitsGun of bot penguin.Joker .611wr hit me    1/172  =    0.58%&lt;br /&gt;
hit rate for the following bot(s) out of 158 shots&lt;br /&gt;
 penguin.Joker .611wr:   16/158  =   10.13%&lt;br /&gt;
  My virtual gun hit rate stats stats&lt;br /&gt;
                 enemy name              circularGun         circularAccelGun                headOnGun                  kdtGF50                 kdtGF100                 kdtGF200                 kdtGF400                 kdtGF800                kdtGF1600           guessFactorGun                randomGun            assistedGFGun   decayingGuessFactorGun   flipLastGuessFactorGun&lt;br /&gt;
       penguin.Joker .611wr       11/147  =    7.48%       13/147  =    8.84%       17/147  =   11.56%       23/147  =   15.65%       14/147  =    9.52%       12/147  =    8.16%       19/147  =   12.93%       14/147  =    9.52%       18/147  =   12.24%       11/147  =    7.48%       17/147  =   11.56%       13/147  =    8.84%        7/147  =    4.76%       17/147  =   11.56%&lt;br /&gt;
bot penguin.Joker .611wr intercepted my bullet   10/172  =    5.81%&lt;br /&gt;
Profiler stats---------------------------&lt;br /&gt;
  getOverlap was executed 22026 execution times: min 67 nS, average 118 nS, max 58 uS&lt;br /&gt;
  getJoin was executed 5 execution times: min 2 uS, average 2 uS, max 3 uS&lt;br /&gt;
  choseNewPath was executed 2529 execution times: min 95 uS, average 321 uS, max 14 mS&lt;br /&gt;
  rankAimAtAllSolutions was executed 2358 execution times: min 243 nS, average 4 uS, max 2 mS&lt;br /&gt;
  waveWithBullets.getDanger was executed 312940 execution times: min 74 nS, average 331 nS, max 2 mS&lt;br /&gt;
  calculateDanger was executed 10899 execution times: min 801 nS, average 43 uS, max 13 mS&lt;br /&gt;
  waveWithBullets.getWaveDanger was executed 26899 execution times: min 450 nS, average 2 uS, max 2 mS&lt;br /&gt;
  gunManagerManage was executed 2529 execution times: min 3 uS, average 586 uS, max 12 mS&lt;br /&gt;
---------------------------&lt;br /&gt;
500353: penguin.Joker .611wr hit eem.EvBotNG vtest at GF = -0.31909710498646854 with real bullet&lt;br /&gt;
=========================&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Beaming</name></author>
		
	</entry>
</feed>