Announcement

Collapse
No announcement yet.

Objekt über Hashtable ansprechen und löschen

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Objekt über Hashtable ansprechen und löschen

    Hallo leute,

    Nun bin ich an einem weiteren Problem gesteossen.
    Alle Objekte die ich mit hilfe von:

    Code:
    Activator.CreateInstance(type);
    instanziert habe, sind in einem Hashtable gespeichert.

    Ich kenne denn Key (String) von dem Objekt, der über Hashtable erreichbar ist. Wie kann ich dieses Object über Hashtable ansprechen und löschen (also quasi auf null stellen)?

    Danke für Hilfe

  • #2
    Hier findest Du Hilfe (siehe auch Bsp.):
    http://msdn2.microsoft.com/en-us/lib...hashtable.aspx
    Simon

    Comment


    • #3
      Zunächst möchte ich empfehlen, anstelle einer Hashtable ein Dictionary<key, value> zu verwenden. Dabei legt man den (eindeutigen) Schlüsselwert selbst fest.

      Deine Wünsche lassen sich aber auch mit einer Hashtable verwirklichen. Gehe dazu in die SDK-Doku und lies unter Hashtable - alle Member nach. Dann findest Du u.a.:
      Eigenschaft a
      Ruft den Wert ab, der dem angegebenen Schlüssel zugeordnet ist, oder legt diesen fest.

      Methode b
      Bestimmt, ob die Hashtable einen bestimmten Schlüssel enthält.

      Methode c
      Bestimmt, ob die Hashtable einen bestimmten Wert enthält.

      Methode d
      Entfernt das Element mit dem angegebenen Schlüssel aus der Hashtable.
      Merke: Die SDK-Doku ist das wichtigste Hilfsmittel! Jürgen

      Comment


      • #4
        Erstmals Danke für die Antworten


        Methode d
        Entfernt das Element mit dem angegebenen Schlüssel aus der Hashtable.
        Wird dann das Object auch ganz gelöscht, oder ist er einfach nicht mehr im Hashtable vorhanden?

        Mein Ziel ist es vom Hashtable zu entfernen und dann das Object komplett zu löschen, damit ich wieder Speicher zur verfügung habe.

        Danke

        Comment


        • #5
          Originally posted by user.Net View Post
          Wird dann das Object auch ganz gelöscht, oder ist er einfach nicht mehr im Hashtable vorhanden?
          Keine Ahnung, ausprobieren: Erstelle ein Objekt mit einem speziellen Variablennamen; trage es in die Hashtable ein; entferne es wieder und greife anschließend auf diese Variable zu.

          Meine Vermutung (wegen der Struktur der Hashtable) ist: Das Objekt existiert unabhängig von der Hashtable.

          Originally posted by user.Net View Post
          Mein Ziel ist es vom Hashtable zu entfernen und dann das Object komplett zu löschen,
          Ist doch kein Problem, sind nur eben zwei Schritte nacheinander.

          Originally posted by user.Net View Post
          damit ich wieder Speicher zur verfügung habe.
          Wenn das der einzige Grund ist: vergiss es. Heutzutage ist der Speicher in aller Regel kein Problem mehr. Wichtiger ist, dass Objekte grundsätzlich nur solange "leben" sollten, wie sie benötigt werden. (Danach stehen sie dem GC zur Verfügung; aber der wird meistens erst dann tätig, wenn es nötig wird - also oft erst nach Programmende.)

          Jürgen

          Comment

          Working...
          X