← Thread:Talk:Multithreading/Reinventing wheels?/reply (2)
I'd be in favour of disabling multi-threading in the rumble, or somehow only allowing a single thread to run at the same time. Otherwise there could be some very dirty tactics like starving the opponent of CPU or memory bandwidth during their turns, which is against the spirit of trying to keep the bots' processing isolated except through the robocode engine.
I agree that computational tasks should not be allowed to run multithreaded in rumble or even in general robocode, or at least we should not allow threads to be run when other bots are running.
However as long as you do file I/O for data logging purposes, multithreading is essential as it’s not fair for your main threads to run blocking I/O only to get a lot skipped turns.
Anyway, a better solution is to provide this in robocode, so fairness is guaranteed.
I usually put the engine in debug mode if I am going to be logging a lot of data. Also, robocode does increase your processing time allowed if you do any file IO.
You do not have permission to edit this page, for the following reasons:
- The action you have requested is limited to users in the group: Users.
- You must confirm your email address before editing pages. Please set and validate your email address through your user preferences.
You can view and copy the source of this page.Xor (talk)