Я работаю над программным обеспечением, которое должно поддерживать непрерывную работу n потоков, поэтому я решил реализовать простейшее решение, о котором я мог подумать: каждый из моих потоков определен в классе, который реализует Runnable, и в основномЯ запускаю все из них.
Недавно я заметил, что один из моих потоков не запускается, поэтому я думаю, что мой код вообще не безопасен.
Это пример одного из моих исполняемых файлов:
public class ExRunnable implements Runnable {
@Override
public void run() {
printLog("ExRunnable started...");
try {
while (true) {
...
}
} catch(Exception ex) {
ex.printStackTrace();
}
}
}
И вот как это начинается в основном:
public static void main(String[] args) {
if (readConfigurationData()) {
Thread exThread = new Thread(new ExRunnable());
exThread.start();
...
}
else
printLog("Invalid configuration data!");
}
Я начинаю около 12темы в моей основной функции, и только один из них, кажется, не запускается.Я хотел бы знать, действительно ли мой метод небезопасен, и не могли бы вы предоставить мне более безопасный шаблон.
Большое спасибо!