Callback anmelden in einem Workerthread



  • Hallo zusammen.

    Spezielle Frage. Hoffe ihr könnt mir helfen.
    Wir verwenden das Prozessvisualisierungssystem WinCC von Siemens.

    Hierzu gibt es eine c++ Schnittstelle die sich ODK nennt.

    Beschreibung:

    https://cache.industry.siemens.com/dl/files/968/109747968/att_920886/v1/WCC_Professional_V13_SP2_Prog_deDE_de-DE.pdf

    Mir geht es im speziellen um die Funktion DMInstallDataService. Hier wird eine Callback am WinCC angemeldet, die aufgerufen wird wenn eine Nachricht über den "Datentransportkanal" gesendet wird.

    Welche Technik genau dahinter steckt weiß ich nicht, eventuell COM.

    Rufe ich die Funktion DMInstallDataService im Mainthread auf, wird die Callback ausgeführt.
    Rufe ich die Funktion in einem eigenen thread auf (std::thread) wird die Callback nicht ausgeführt.

    Liegt wohl daran dass der thread keine Message Loop hat.
    Gibt es hier eine Löung das ganze in einem eigenen thread zu handeln?


Log in to reply