2017-11-15 3 views
0

Ich bin neu in Quartz, und ich habe die Dokumentation gelesen, aber ich konnte nicht finden, was ich brauche.Wie man Methode auf Auftrag/Fadenerzeugung laufen lässt?

Ich habe mehrere Jobs, die wir mit Quartz planen/ausführen, und ich möchte es eine Methode ausführen, wenn es einen neuen Thread für einen Job erstellt.

Der Code, den ich ausführen möchte, ist generisch und ich muss es während des Thread-Start ausführen.

Ich verstehe, dass ich erreichen könnte, was ich will, wenn ich eine JobBase Klasse mit meinem Code erstelle und alle meine Jobs davon erben; aber da dies mehrere Modifikationen erfordern würde und dieser Code nicht wirklich von den Jobs betroffen ist, habe ich mich gefragt, ob es eine Funktion in Quartz gibt, die es mir erlauben würde, das zu erreichen, was ich brauche, ohne sie zu modifizieren.

Können Sie Quartz sagen, dass es eine Methode ausführen soll, wenn es während des Threadstarts einen Thread/Job erstellt?

+0

In Quartz 2.x erstellt der Scheduler beim Start eine definierte Anzahl von Threads. Es gibt keine Möglichkeit, eine Methode beim Thread-Start auszuführen, aber Sie können eine Job-Factory verwenden und dort Ihren Code ausführen, wenn ein Job erstellt wird. Werfen Sie einen Blick [hier] (https://stackoverflow.com/a/42158004/6666799), um zu sehen, wie Sie eine Job-Factory erstellen können. – Rabban

Antwort

0

Implementieren Sie IJobListener oder erweitern Sie JobListenerSupport und implementieren oder überschreiben Sie die JobToBeExecuted Methode. Registrieren Sie Ihren Listener bei jeder Ausführung der Anwendung wie unter here beschrieben.

Verwandte Themen