Event/Message System für Anwendungsinterne Kommunikation?



  • hallo!

    ich will eine applikation, die die für windows typischen "events" und "messages" verwendet nach linux portieren. die applikation verwendet die events (bestehend aus name (string) und integer-datenwert) für die interne kommunikation zwischen threads.
    gibt es ein natives event-system in linux? ich habe zwar schon mit QT ebenfalls mit event-queues arbeitet, aber in dieser applikation habe ich keine GUI. ausserdem würde ich QT abhänigikeiten vermeiden wollen (wegen der lizenz).
    alles was ich bisher als asynchrone kommunikationsschicht verwendet habe ist IPC, was aber nicht das richtige für die prozess-interne kommunikation ist (glaube ich, wenn man dem namen glaubt).

    ich hoffe ich entfache jetzt keinen streit über prozessinterne asychrone kommunikation zwischen threads-- also bitte einfach mal ein paar vorschläge machen

    marcel



  • Hi,
    Wenn Du gar nicht mehrere Prozesse, sondern nur Threads hast, dann teilen sich die doch sowieso einen gemeinsamen Speicherbereich.
    Shared Memory als IPC-Methode ist sonst zwar oft nicht allzu schön (wenn auch meist recht performant), aber bei Threads geht das IMO durchaus in Ordnung.



  • Ich verwende oft pipes um zwischen Threads Daten auszutauschen. Ansonsten benutze ich eine threadsichere Queue die beliebige Datentypen sicher austauschen kann.


Anmelden zum Antworten