[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