diff --git a/src/main/java/org/semul/budny/account/Account.java b/src/main/java/org/semul/budny/account/Account.java index 21b6f0f..2bc277e 100644 --- a/src/main/java/org/semul/budny/account/Account.java +++ b/src/main/java/org/semul/budny/account/Account.java @@ -32,7 +32,7 @@ public class Account extends Thread { public static synchronized Account getInstance(String username, String password) { Account account = new Account(username, password); account.start(); - ThreadsController.pool.add(account); + return account; } @@ -49,6 +49,8 @@ private Account(String username, String password) { @Override public void run() { + ThreadsController.add(this); + try { launch(); diff --git a/src/main/java/org/semul/budny/controller/TasksController.java b/src/main/java/org/semul/budny/controller/TasksController.java index caeff8d..eb94a0d 100644 --- a/src/main/java/org/semul/budny/controller/TasksController.java +++ b/src/main/java/org/semul/budny/controller/TasksController.java @@ -11,7 +11,6 @@ public class TasksController extends Thread implements Controller { public static void startThread() { TasksController controller = new TasksController(); controller.start(); - ThreadsController.pool.add(controller); } public static void add(Task task) { @@ -24,6 +23,8 @@ public static int size() { @Override public void run() { + ThreadsController.add(this); + while (!Thread.currentThread().isInterrupted()) { tasks.removeIf(task -> task.getState() == State.TERMINATED); try { diff --git a/src/main/java/org/semul/budny/manager/Manager.java b/src/main/java/org/semul/budny/manager/Manager.java index e437814..f48cbfc 100644 --- a/src/main/java/org/semul/budny/manager/Manager.java +++ b/src/main/java/org/semul/budny/manager/Manager.java @@ -27,7 +27,7 @@ private Manager() { @Override public void run() { - ThreadsController.pool.add(this); + ThreadsController.add(this); while (!Thread.currentThread().isInterrupted()) { if (TasksController.size() == 0) { diff --git a/src/main/java/org/semul/budny/menu/Menu.java b/src/main/java/org/semul/budny/menu/Menu.java index 60f4f98..3bdbb26 100644 --- a/src/main/java/org/semul/budny/menu/Menu.java +++ b/src/main/java/org/semul/budny/menu/Menu.java @@ -16,7 +16,6 @@ public class Menu extends Thread { public static void getInstance(Budny app) { Menu menu = new Menu(app); menu.start(); - ThreadsController.pool.add(menu); } public Menu(Budny app) { @@ -27,6 +26,8 @@ public Menu(Budny app) { @Override public void run() { + ThreadsController.pool.add(this); + greetings(); try {