Код: Выделить всё
class Task implements Runnable {
@Override
public void run() {
doTask();
}
public void doTask() {
for (int i = 0; i < 1500; i++) {
System.out.print('T');
}
}
}
public class Main {
public static void main(String[] args) {
Task t = new Task();
Thread thread = new Thread(t);
thread.start();
for (int i = 0; i < 1500; i++) {
System.out.print('M');
}
}
}
Однако я считаю, что одна проблема заключается в том, что, если Я хочу иметь несколько логик в классе, которые я хочу запускать одновременно, и тогда у меня возникает проблема. Что ж, ветераны Java, возможно, знают какой-нибудь трюк, чтобы сделать это. Однако я попробовал реализовать такую логику по-другому. Вот код, который я написал:
Код: Выделить всё
class Task {
public void doTask() {
for (int i = 0; i < 1500; i++) {
System.out.print('T');
}
}
}
public class Main {
public static void main(String[] args) {
Task t = new Task();
Thread thread = new Thread(new Runnable() {
@Override
public void run() {
t.doTask();
}
});
thread.start();
for (int i = 0; i < 1500; i++) {
System.out.print('M');
}
}
}
Теперь я хочу знать, есть ли в этом какая-то польза реализации многопоточной операции с использованием первого подхода и есть ли недостатки у второго?
Подробнее здесь: https://stackoverflow.com/questions/666 ... ng-in-java
Мобильная версия