Gast
#1858621
Hallo Forum, ich habe ein allgemeines Verständnis/Herangehensproblem, vielleicht könnt ihr mir etwas auf die Sprünge helfen: Verwendete Sprache ist C. Ich brauche eine Datenstruktur, die mir das einfache hinzufügen und entfernen von Objekten erlaubt. Daher dachte ich eine doppeltverkettete Liste aus structs wäre das Richtige, aber wenn Ihr mir hier was anderes empfehlen könnt, probiere ich das sehr gerne aus. Ein Objekt besteht also aus "next", "previous", "data_one", "data_two"; falls Vorgänger oder Nachfolger nicht vorhanden sind ist next oder previous null. Es gibt einen Zeiger, der immer auf den Anfang der Liste zeigt. Mein Problem ist, dass ich mehrere Threads habe, die auf die Objekte in den Listen zugreifen und diese mozidifieren, entfernen oder neue hinzufügen. Nun frage ich mich, wie man den Zugriff am Besten regeln kann? Ich befürchte, dass ein Mutex der den Zugriff auf die gesammte Struktur regelt sehr aufwendig wird, da ich an sehr vielen Stellen im Programm diese Listen verändere. Wäre der Zugriff über eine Hilfsfunktion die in einem eigenen Thread sitzt der bessere Weg? Wie kommuniziert man dann am Besten mit diesem Thread? Vielleicht könnt Ihr mir noch einen anderen Weg aufzeigen. Mit Grüßen Walter