Хорошо так, у меня есть алгоритм работает, как указано ниже, и я хотел бы знать, как я мог перекрашивать в отдельном потоке вместо Event диспетчерской Темы:Как перерисовать() мой JPanel параллельно с вычислениями/в другом потоке?
Input an ArrayList of 2 Dimensional Point objects.
while(each point object has not been a starting point)
LOOP
Arbitrarily choose a starting point
Find the shortest path through all nodes
Call repaint() on the JPanel that displays this path.
END LOOP
Моего вопрос, как я могу настроить другой Thread, так что каждый раз, когда вычисляется кратчайший путь, он отправляет путь к потоку, который перерисовывает JPanel? Я хочу сделать это, потому что я чувствую, что теряю время перерисовки(), и это может сделать метод намного быстрее.
Я предполагаю, что я не могу просто сказать:
new Thread() {
void run() {
myJPane.repaint();
}
}.start()
... так что бы создать новый поток каждый раз. Как я логически это делаю?
пожалуйста, почему причина используя 'новый поток() {' 'и не свинг Timer', есть Somthing вроде как' OpenGL' – mKorbel
к сожалению, я не понимаю, как я мог бы использовать Swing-таймер здесь ... – ujvl