Kommunikation zwischen Threads
-
Hallo Leute!
Ich steh zur Zeit ein wenig auf der Leitung, weil mir das logische Denken fehlt.
Ich habe zwei Threads programmiert, die in OpenGL in der Hauptfunktion aufgerufen werden (threadlesen zum Lesen eines Bildpaares und threadzeichnen zum Zeichnen des Bildpaares).Es sollte ein Handshaking zwischen dem zeichnen-Thread & threadlesen gemacht werden bei dem threadlesen dem zeichnen-Thread signalisiert, dass das Bildpaar geladen ist & der zeichnen-Thread nachdem er das Bildpaar uebernommen hat an threadlesen signalisiert dass er mit dem Laden des naechsten Bildpaares beginnen kann. Waehrend threadlesen dann mit dem Laden beschaeftigt ist ruft der zeichnen-Thread staendig DrawGLScene (Funktion zum Einlesen der Bilder) auf & checkt ob das Signal dass threadlesen mit dem Laden fertig ist wieder da ist.
Hat einer eine Idee wie ich das realisieren kann?
Mir fehlt leider der logische Verstand, aber ich denke, dass das nicht so schwer ist.Vielen Dank,
Mit freundlichen Grüßen,
ZEROlimited
-
unter windows?
geht z.b. mit events. guckst du: http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dllproc/base/synchronization_functions.asp
(unter 'event functions')
-
aber es sollte ja reichen, dass man einfache integer-Werte übergibt oder?
-
ZEROlimited schrieb:
aber es sollte ja reichen, dass man einfache integer-Werte übergibt oder?
kommt drauf an. wenn mit ints, dann musste die wenigstens in'ne critical section einpacken um wenigstens die zugriffe zu synchronisieren
-
ANSI C kennt keine Threads. Bitte frage im passenden Forum nach. Danke.
-
Es geht ja hier nicht so sehr um die Threads, sondern eher um die Logik, die hinter meiner Aufgabe steht.
Mfg, David