none
Gleiche Instanz aus mehreren Prozessen verwenden RRS feed

  • Frage

  • Hallo,

    ich möchte aus verschiedenen lokalen Prozessen die gleiche Instanz eines Objekts verwenden.

    Kann mir jemand einen Hinweis geben?

    Danke und viele Grüße,
    Christian

    Montag, 27. Juli 2015 09:56

Antworten

  • Hallo Christian,

    .net Remoting (https://msdn.microsoft.com/de-de/library/bb979191.aspx) hat das ermöglicht.

    In aktuellen Technologien könnte es über Named-Pipes (https://msdn.microsoft.com/de-de/library/ms733769(v=VS.110).aspx) umgesetzt werden.

    Freundliche Grüße

    Jan

    Montag, 27. Juli 2015 11:40
  • Interessante Frage Christian,

    zu erst einmal ein Wort zu Val10

    Deine Idee würde aus zwei gRünden nicht klappen. Erstens, würde es nicht über die Anwendungsgrenzen hinausreichen. Zweitens würde es nochnicht mal global wirken, wenn du innerhalb einer Applikation globales haben willst, solltest du vielleicht an statische Sachen denken, also wie hier:

    public static readonly Dictionary<string, object> GlobalValues = new Dictionary<string, object>();
    //Der Aufruf wäre dann auch Kinderleicht.

    Wegen der eigentlichen Frage.

    Christian, du solltest vielleicht entweder den rat von Jan befolgen oder mal folgendes testen.

    Du kannst auch - was im übrigen einfacher wäre als Remoting etc. - die Registry verwenden.

    Wenn du einen Schlüssel erstellst und mit RegistryOptions.Volatile als Argument arbeitest, dann wird der Schlüssel beim entladen wieder gelöscht. Dann ist er also beim neustart des Rechners bzw. wenn die letzte Programminstanz beendet wurde wieder weg.


    © 2015 Thomas Roskop
    Germany //  Deutschland

    Montag, 27. Juli 2015 13:16

Alle Antworten

  • Sie konnen eine Class Variable addieren und benutzen.

    public List<string> GlobalVariableList {get;set;}

    void method1()

    {

    if(GlobalVariableList==null) GlobalVariableList = new List<string>();

    }

    void method2()

    {

    if(GlobalVariableList==null) GlobalVariableList = new List<string>();

    // konnen Sie die gleice Object variabel benutzen und tun Sie weiter was Sie wollen

    }



    • Bearbeitet Val10 Montag, 27. Juli 2015 10:02
    Montag, 27. Juli 2015 10:01
  • Hallo Christian,

    .net Remoting (https://msdn.microsoft.com/de-de/library/bb979191.aspx) hat das ermöglicht.

    In aktuellen Technologien könnte es über Named-Pipes (https://msdn.microsoft.com/de-de/library/ms733769(v=VS.110).aspx) umgesetzt werden.

    Freundliche Grüße

    Jan

    Montag, 27. Juli 2015 11:40
  • Interessante Frage Christian,

    zu erst einmal ein Wort zu Val10

    Deine Idee würde aus zwei gRünden nicht klappen. Erstens, würde es nicht über die Anwendungsgrenzen hinausreichen. Zweitens würde es nochnicht mal global wirken, wenn du innerhalb einer Applikation globales haben willst, solltest du vielleicht an statische Sachen denken, also wie hier:

    public static readonly Dictionary<string, object> GlobalValues = new Dictionary<string, object>();
    //Der Aufruf wäre dann auch Kinderleicht.

    Wegen der eigentlichen Frage.

    Christian, du solltest vielleicht entweder den rat von Jan befolgen oder mal folgendes testen.

    Du kannst auch - was im übrigen einfacher wäre als Remoting etc. - die Registry verwenden.

    Wenn du einen Schlüssel erstellst und mit RegistryOptions.Volatile als Argument arbeitest, dann wird der Schlüssel beim entladen wieder gelöscht. Dann ist er also beim neustart des Rechners bzw. wenn die letzte Programminstanz beendet wurde wieder weg.


    © 2015 Thomas Roskop
    Germany //  Deutschland

    Montag, 27. Juli 2015 13:16