[python-users] Relative Referenzen
do_not_reply_to_this_address at t-online.de
do_not_reply_to_this_address at t-online.de
So Mär 29 21:46:46 CEST 2009
Danke für deine Antwort, ich schau mir das nachher mal an. Im moment bin
ich aber von Relativen Referenzen fasziniert vorallendingen weil es in
Java auf anhieb geklappt hat. Das ist jedenfalls nichts Kompliziertes
sondern ziemlich simpel. In Java sieht es so aus. Im Grunde steckt die
ganze Magie in
java.lang.reflect.Field;
package b;
import java.lang.reflect.Field;
class A {
public Integer i;
}
class RelRef<From,To> {
public Field r;
public RelRef(From f,To t){
boolean found=false;
for (Field x :f.getClass().getFields()) {
try {
if (x.get(f)==t) {
if (found) {
throw new RuntimeException();
}
found=true;
r=x;
}
} catch (Exception e) {
throw new RuntimeException(e); }
}
if (!found) {
throw new RuntimeException();
}
}
To get(From f) {
try {
return (To) r.get(f);
} catch (Exception e) {
throw new RuntimeException(e);
}
}
}
public class RefTest {
public static void main(String[] args) {
A a=new A();
a.i=2;
A b=new A();
b.i=3;
RelRef<A,Integer> h=new RelRef<A,Integer>(a,a.i);
Integer ai=h.get(a);
System.out.println(ai); //2
Integer bi=h.get(b);
System.out.println(bi); //3 }
}
Guy K. Kloss wrote:
> Ich bin jetzt ueber Deine Mail ein wenig verwirrt gewesen, aber falls
> ich die Nachfrage in der Essenz richtig verstanden habe, dann koennte
> einer der "Synchronisation Managers" des Processing-Moduls etwas sein.
> Mit dem kann man auf verteilt laufenden Prozessen Daten abfragen und
> synchronisieren. So kann z. B. ein Objekt von zwei Prozessen
> gleichzeitig abgefragt und modifiziert werden, und der Manager
> kommuniziert Aenderungen bei Bedarf an die entfernte Instanz.
>
> HTH,
>
> Guy
>
>
Mehr Informationen über die Mailingliste python-users