Ich benutze Spring und ich habe eine ThreadPoolTaskExecutor
(um ähnliche und sich wiederholende Aufgaben häufig auszuführen) mit CallerRunsPolicy
eingerichtet. Aufgrund der Art der Funktionalität, die ich erstelle, kann ich viele Aufgaben haben, die generiert werden und asynchron ausgeführt werden müssen.Gibt es einen einfacheren Weg, um in Java zu erfahren, ob eine abgelehnte Aufgabe (von einem Executor) als "CallerRunsPolicy" ausgeführt wurde?
Da die Warteschlange ihre Kapazität überschritten hat, werden diese Tasks im Thread des Aufrufers ausgeführt. Ich brauche einen Weg, um herauszufinden, welche Aufgaben in Caller's
Thread ausgeführt werden. Ich weiß, zur Laufzeit kann ich Methoden auf dem Executor aufrufen, um herauszufinden, ob die Warteschlange voll ist, und dann wird jede neue Aufgabe folgen CallersRunPolicy
, aber ich fragte mich, ob es andere Möglichkeiten gibt, dies zu tun?
Das macht Sinn. Mir war nicht klar, dass es eine Methode auf dem Executor gab, um den Zurückweisungs-Rückruf zu registrieren. Trotzdem danke ! –