Взаимное получение данных Модель и Представление (Многопоточность)
Подскажите пожалуйста, имею класс:
public class KadrPressMain {
static Model model;
static KadrPress viewKadr;
public static void main(String[] args) {
SwingUtilities.invokeLater(new Runnable() {
@Override
public void run() {
model=new FileSystemModelJTable(viewKadr.getjLabel().getText());
viewKadr=new KadrPress(model);
viewKadr.setVisible(true);
}
});
}
}
Имеется класс представления
public class KadrPress extends JFrame {
private Model model;
private JLabel jLabel;
public JLabel getjLabel() {
return jLabel;
}
public KadrPress(Model model) throws HeadlessException {
this.model=model;
this.setSize(500,500);
this.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
this.setLocationRelativeTo(null);
JButton loadButton=new JButton("Загрузить");
loadButton.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
model.manLoader();
}
});
this.add(loadButton,"South");
jLabel=new JLabel("Яблоки");
this.add(jLabel);
}
}
и класс модели:
public class FileSystemModelJTable implements Model, Serializable{
private String path;
private int summ;
public FileSystemModelJTable(String path) {
this.summ=0;
DTMFormer dtmFormer=new DTMFormer();
dtmFormer.start();
}
@Override
public void manLoader() {
System.out.println("Загрузка"+FileSystemModelJTable.this.summ+""+path);
}
private class DTMFormer extends Thread
{
@Override
public void run() {
for (int i=0;i<10000;i++)
{
FileSystemModelJTable.this.summ=FileSystemModelJTable.this.summ+i;
}
}
}
}
Суть вопроса состоит в следующем, необходимо, чтобы при вызове конструктора модели, независимо от выполнения остальной программы отработала нить со счетчиком, при этом представление продолжало загрузку, а выполнения счетчика Представление и Модель могли получать данные друг из друга. Как сделать что бы данная программа работала без ошибок. Спасибо