【发布时间】:2012-09-07 00:50:41
【问题描述】:
好的....让我尽力解释一下.... 另外:这是我的世界中的一个模组。 好的,所以我创建了一个线程对象
public static Thread KillThread = new Thread();
然后在我的主类的构造函数中,当游戏(我的工艺开始)时调用我有
KillThread = new Thread(new KillAuraThread());
KillAuraThread 是线程类的名称。 所以我现在创建了一个线程。是哪里让我生气 线程会运行1秒,不能多次运行,否则会破坏延迟和线程的点。
if(KillAura.enabled && !KillThread.isAlive())
{
System.out.println("Go AURA!");
try
{
KillThread.start();
}catch (Exception e)
{
e.printStackTrace();
}
}
这被称为游戏中的每个滴答声,它会发送位置更新等。
现在这是我遇到问题的地方。一旦线程开始,它就变成“活动的”,当它结束时,它不再是“活动的”。但是线程只能启动一次吗?因为第一次运行后它不再工作?和想法?链接?
【问题讨论】:
-
(也许这里有比线程更好的方法?)
-
不要使用线程。 Minecraft 是资源密集型的,无需添加大量线程来运行一秒钟然后停止。以与其他所有方法相同的方式执行此操作,即给它一个终生计数器,每滴答减一,当它变为零时,杀死光环。
-
KillAuraThread 是一个 Runnable 接口?
-
另外,在构造函数中启动线程是并发错误的常见原因。
标签: java multithreading