我创建了一个非常简单的Java游戏,其中包含一名玩家和随机移动的漫游器。玩家可以通过按下按钮来将漫游器添加到地图上,这会为机器人创建一个新线程。区分线程,即使它们具有相同的名称
因此,它看起来像这样...
Thread newBotThread = new Thread(new Runnable(){
public void run(){
如果我按几次按钮被创建,几个机器人,他们在所有的线程名“newBotThread”下运行?我添加了允许玩家与机器人互动的功能,是否有区分线程的方法,即使它们都具有相同的名称?所以我可以阻止一个机器人,而其他人仍然继续?
非常感谢!
此代码是否在“添加机器人”按钮的事件处理程序内运行?如果是这样,即使只有一个机器人,你如何访问该块之外的变量?我会考虑在你的游戏类中有一个属于bot的集合,并且事件处理程序将线程添加到这个集合中。 – The111
每个线程都有一个唯一的'Thread.getId()' –