JAVA запустить в отдельном потоке + передача параметров в поток - запуск в отдельном потоке
Primary tabs
Forums:
Чтобы запустить код в отдельном потоке на ява , можно использовать следующий способ:
1) реализовать интерфейс Runnable - например так =
public class MyThread implements Runnable { public String path;// параметр public MyThread(String path) {// через конструтор передадим параметр // передаём в конструктор все параметры, которые могут пигодится потоку this.path=path; // сохраняем параметры как поля - мне нужен только один =)) } public void run() { // здесь пишем код, который будет исполняться в отдельном потоке // далее я вызываю два статических метода одного из своих классов (самописный класс))) String data = DoIt.readDataFromFile(this.path); //читаем DoIt.writeDataInFile(path, data); // пишем } }
а теперь, чтобы код размещённый в его методе run() запустился в отдельном потоке в вызывающем коде надо написать следующее (или что-то аналогичное) =
Runnable r = new MyThread("C:/123/34.txt"); // создаём класс и передаём в него параметр new Thread(r).start(); // передаём объект r как параметр создаваемого потоку // теперь код из run() может работать в отдельном потоке + // обрабатывать переданные параметры! =)) о как)
- Log in to post comments
- 15729 reads