diff --git a/Tasks/src/main/java/fr/altarik/toolbox/task/Scheduler.java b/Tasks/src/main/java/fr/altarik/toolbox/task/Scheduler.java index c3b5d99..b6bb5d3 100644 --- a/Tasks/src/main/java/fr/altarik/toolbox/task/Scheduler.java +++ b/Tasks/src/main/java/fr/altarik/toolbox/task/Scheduler.java @@ -2,13 +2,14 @@ package fr.altarik.toolbox.task; import java.util.ArrayList; import java.util.List; +import java.util.Queue; public class Scheduler implements Runnable { - private final List tasks; + private final Queue tasks; private final SendTaskWorkerI worker; - public Scheduler(SendTaskWorkerI worker, List tasks) { + public Scheduler(SendTaskWorkerI worker, Queue tasks) { this.worker = worker; this.tasks = tasks; } diff --git a/Tasks/src/main/java/fr/altarik/toolbox/task/async/AsyncPeriodicTasks.java b/Tasks/src/main/java/fr/altarik/toolbox/task/async/AsyncPeriodicTasks.java index b3f7b9d..3b55251 100644 --- a/Tasks/src/main/java/fr/altarik/toolbox/task/async/AsyncPeriodicTasks.java +++ b/Tasks/src/main/java/fr/altarik/toolbox/task/async/AsyncPeriodicTasks.java @@ -2,7 +2,8 @@ package fr.altarik.toolbox.task.async; import fr.altarik.toolbox.task.*; -import java.util.Stack; +import java.util.Queue; +import java.util.concurrent.ConcurrentLinkedQueue; import java.util.concurrent.ExecutorService; import java.util.concurrent.Executors; import java.util.concurrent.TimeUnit; @@ -14,7 +15,7 @@ import java.util.concurrent.TimeUnit; public class AsyncPeriodicTasks implements PeriodicTaskI, AsyncTaskI, SendTaskWorkerI { private final ExecutorService worker; - private final Stack tasks; + private final Queue tasks; protected final Scheduler scheduler; private final ServerTickListener listener; @@ -26,7 +27,7 @@ public class AsyncPeriodicTasks implements PeriodicTaskI, AsyncTaskI, SendTaskWo } else { worker = Executors.newFixedThreadPool(numberOfWorker); } - tasks = new Stack<>(); + tasks = new ConcurrentLinkedQueue<>(); this.scheduler = new Scheduler(this, tasks); this.listener = new ServerTickListener(scheduler); } diff --git a/Tasks/src/main/java/fr/altarik/toolbox/task/sync/PeriodicSyncTask.java b/Tasks/src/main/java/fr/altarik/toolbox/task/sync/PeriodicSyncTask.java index e0c5e1f..83a6b1f 100644 --- a/Tasks/src/main/java/fr/altarik/toolbox/task/sync/PeriodicSyncTask.java +++ b/Tasks/src/main/java/fr/altarik/toolbox/task/sync/PeriodicSyncTask.java @@ -2,17 +2,17 @@ package fr.altarik.toolbox.task.sync; import fr.altarik.toolbox.task.*; -import java.util.ArrayList; -import java.util.List; +import java.util.Queue; +import java.util.concurrent.ConcurrentLinkedQueue; public class PeriodicSyncTask implements PeriodicTaskI, SendTaskWorkerI { private final ServerTickListener listener; - private final List tasks; + private final Queue tasks; protected final Scheduler scheduler; private PeriodicSyncTask() { - this.tasks = new ArrayList<>(2); + this.tasks = new ConcurrentLinkedQueue<>(); this.scheduler = new Scheduler(this, tasks); this.listener = new ServerTickListener(scheduler); } diff --git a/Tasks/src/main/java/fr/altarik/toolbox/task/sync/SyncTask.java b/Tasks/src/main/java/fr/altarik/toolbox/task/sync/SyncTask.java index 19214e2..e77658d 100644 --- a/Tasks/src/main/java/fr/altarik/toolbox/task/sync/SyncTask.java +++ b/Tasks/src/main/java/fr/altarik/toolbox/task/sync/SyncTask.java @@ -2,17 +2,17 @@ package fr.altarik.toolbox.task.sync; import fr.altarik.toolbox.task.*; -import java.util.ArrayList; -import java.util.List; +import java.util.Queue; +import java.util.concurrent.ConcurrentLinkedQueue; public class SyncTask implements TaskI, SendTaskWorkerI { private final ServerTickListener listener; - private final List tasks; + private final Queue tasks; protected final Scheduler scheduler; private SyncTask() { - this.tasks = new ArrayList<>(2); + this.tasks = new ConcurrentLinkedQueue<>(); this.scheduler = new Scheduler(this, tasks); this.listener = new ServerTickListener(scheduler); } diff --git a/gradle.properties b/gradle.properties index 2b3981a..b918202 100644 --- a/gradle.properties +++ b/gradle.properties @@ -8,6 +8,6 @@ loader_version=0.14.12 fabric_version=0.70.0+1.19.3 maven_group=fr.altarik.toolbox -maven_version=3.0.1-SNAPSHOT +maven_version=4.0.0-SNAPSHOT repo_username=Altarik repo_password=password \ No newline at end of file