Watchdog für die Anmeldung von Clients



  • Du kannst natürlich fertige C++-Typen verwenden, std::map mit der Client-ID als Schlüssel bietet sich in der Tat an. Den Mutex verwendest Du, damit sich die zugreifenden Threads nicht gegenseitig in die Quere kommen, lies die Details am besten einfach nach. (Wikipedia: Mutex)

    Und ich würde der Einfachheit halber nicht UDP sondern TCP verwenden, um die Lebenszeichen zu verschicken, aber das ist Geschmackssache. Du könntest zB auch den Server beim Client anfragen lassen, ob er noch lebt, dann tust Du Dir mit Änderungen der Lease-Zeit ein bisschen einfacher.

    Edit: Vermaledeite ubb-Tags.



  • Std::map sagt mir jetzt leider nicht viel, wie gesagt, ich tu mich mit C++ etwas schwerer als mit Java.
    Und ob ich UDP oder TCP verwende das ist eigentlich egal, die hauptsacheist, dass ich eine Anwendung auf die Beine stelle die Nachrichten sendet und die Nachrichten empfängt.
    Und wenn der Timer abgelaufen ist, dann soll natürlich auch der Server beim Client anfragen, das wäre das Optimum... 😉

    Der Mutex kontrolliert sozusagen die Aktivität der beiden Threads?



  • Du darfst ruhig Google benutzen, ist nicht verboten.

    std::map ist die Map-Implementierung der C++-Standardbibliothek, in Java verwendet man dafür idR HashMap.
    Und wie das mit den Mutexes und Semaphoren und so funktioniert, musst Du wohl nachlesen, Deine Lücken sind doch recht groß.



  • Danke, aber ich dachte ein Forum ist dazu da um Fragen zu stellen, oder?



  • Ja, _konkrete_ Fragen, aber Du willst Dinge erklärt bekommen, die Du besser in einem Buch oder Wikipedia oder sonstwo nachliest.

    Das ist alles Grundlagenwissen, das Du Dir leicht mit ein bisschen Recherche + Lesen aneignen kannst.



  • Na ich werde mal auf deine Hinweise eingehen, und mein Wissen in diese Richtungen ein wenig auffrischen, und dann darauf zurückkommen.
    Wie gesagt mir gehts im wesentlich darum wie ich das unter C++ programmieren kann...



  • http://www.cppreference.com/ für std::map
    http://www.pronix.de/pronix-6.html für daemons (die bauchst du für die server UND die client anwendung), threads udn netzwerkprogrammierung.

    ich hoffe, du hast viel zeit 🙂



  • Was heißt viel Zeit, meinst du es reichen 2 Wochen um ein erstes Ergebnis zu liefern?



  • kommt drauf an, wie schnell du lernst. ich mein aber eher, dass es keine zwei stündige geschichte am sonntag nachmittag ist.



  • Also wie gesagt,ein paar Grundlagen sind ja da, nur leider hatte ich bisher nicht viel mit C++ gemacht, und wenn dann programmiere ich eigentlich auch nur nebenbei und das unter Java. Nur muss eben noch diese Entwurfarbeit abgeben...
    Hab auch ein paar Stunden am Tag Zeit dafür, das heißt die nehme ich mir, nur würde halt gerne gezielt Wissen aufnehmen, deswegen auch meine Frage nach bestimmten Links etc..


Anmelden zum Antworten