我有以下情况:
new Thread() {
public void run() {
method(object1);
}
}.start();
// some code ...
new Thread() {
public void run() {
method(object2);
}
}.start();
使用的方法是地图绘制方法。所以基本上,首先我需要使用object1
绘制地图,然后在一段时间之后,例如5秒使用object2
的另一张地图。
我试图将Thread.sleep(5000)
放在两个Thread
之间,等等......但是我无法使它工作。有什么建议吗?
在这种情况下,显示对象2而对象1不显示!
如果我评论第二个线程,则绘制第一个对象。此外,如果我评论第一个线程,则绘制第二个对象。
我需要的是将object1呈现10秒然后呈现object2。
答案 0 :(得分:4)
尝试简化:
method(object1);
Thread.sleep(5000);
method(object2);
如果您需要等待5秒钟,则无需运行线程。
或者,您可以使用java.util.Timer
- 但到目前为止,您的问题似乎不在延迟部分。
答案 1 :(得分:2)
如果你需要在object1之后用object2绘制地图,你应该
new Thread() {
public void run() {
method(object1);
method(object2);
}
}.start();
我不确定你的方法(object1)需要多长时间才能运行但是如果这需要超过5秒并且线程在睡眠后回来,那么方法(object2)将启动并且方法(object2)成为可能如果这比方法(object1)花费的时间少,将首先完成。