Erfassen von Methodenaufrufen in Java

8

Ich muss einen Methodenaufruf in Java erfassen und JPDA oder JDI nicht verwenden; Ich möchte, dass es in der ursprünglichen JVM passiert.

Zum Beispiel:

%Vor%

Ich möchte die Methode zu diesem Zeitpunkt nicht ausführen lassen, sondern sie erfassen und in einer Warteschlange einplanen. Daher wird AOP mir in dieser Hinsicht nicht helfen. Ich dachte über Proxying die Methode nach. Etwas wie:

%Vor%

Irgendwelche Ideen? Vielen Dank im Voraus.

    
nobeh 25.01.2011, 14:33
quelle

2 Antworten

14

Sie können eine Technik namens Dynamic Proxies in Java verwenden. Sie werden im folgenden Dokument ausführlich beschrieben: Dynamische Proxies

Die Lösung für Ihr Problem wäre dann (mit kleinen Änderungen notwendig):

%Vor%

Konstruiere dann einen EnqueueProxy für eine Implementierung der A-Schnittstelle und rufe die m-Methode auf:

%Vor%     
paweloque 25.01.2011, 14:35
quelle
1

Sieht aus, als wären Sie auch mit einer Warteschlange von Callable s.

    
ShiDoiSi 25.01.2011 15:11
quelle

Tags und Links