Improved the Scheduler.
Adds nag message when async tasks are not properly shut down and adds a limiter for sync tasks. Once they use 35ms in a single tick, any remaining tasks are not executed until later ticks. Adds a method to report the pending tasks and one to report active worker threads
This commit is contained in:
@@ -3,8 +3,9 @@ package org.bukkit.craftbukkit.scheduler;
|
||||
import java.lang.Comparable;
|
||||
|
||||
import org.bukkit.plugin.Plugin;
|
||||
import org.bukkit.scheduler.BukkitTask;
|
||||
|
||||
public class CraftTask implements Comparable<Object> {
|
||||
public class CraftTask implements Comparable<Object>, BukkitTask {
|
||||
|
||||
private final Runnable task;
|
||||
private final boolean syncTask;
|
||||
@@ -44,7 +45,7 @@ public class CraftTask implements Comparable<Object> {
|
||||
return task;
|
||||
}
|
||||
|
||||
boolean isSync() {
|
||||
public boolean isSync() {
|
||||
return syncTask;
|
||||
}
|
||||
|
||||
@@ -56,7 +57,7 @@ public class CraftTask implements Comparable<Object> {
|
||||
return period;
|
||||
}
|
||||
|
||||
Plugin getOwner() {
|
||||
public Plugin getOwner() {
|
||||
return owner;
|
||||
}
|
||||
|
||||
@@ -64,6 +65,10 @@ public class CraftTask implements Comparable<Object> {
|
||||
executionTick += period;
|
||||
}
|
||||
|
||||
public int getTaskId() {
|
||||
return getIdNumber();
|
||||
}
|
||||
|
||||
int getIdNumber() {
|
||||
return idNumber;
|
||||
}
|
||||
@@ -104,6 +109,4 @@ public class CraftTask implements Comparable<Object> {
|
||||
public int hashCode() {
|
||||
return getIdNumber();
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user