Shared Memory
-
Hallo,
im jedem OnPaint-Aufruf wird ein neues shared_memory_object/mapped_region erzeugt?
Das sieht mir sehr verkehrt aus. Das muss doch nur einmal erzeugt werden und nur das memcpy muss wiederholt werden.
-
@Jockelx sagte in Shared Memory:
im jedem OnPaint-Aufruf wird ein neues shared_memory_object/mapped_region erzeugt?
Das sieht mir sehr verkehrt aus. Das muss doch nur einmal erzeugt werden und nur das memcpy muss wiederholt werden.Genau. Ich würde auf beiden Seiten
open_or_create
verwenden, und dann zumindest auf der Producer-Seite das Objekt offen halten so lange der Canvas für den Browser existiert.
-
Ich denke, dass man sogar noch einen Mutex drumrum braucht, damit sich Producer/Consumer nicht in die Quere kommen. Ich glaube auch, dass die Destruktoren von
shared_memory_object
, je nach Erzeugungsmodus, den shared memory Bereich wieder freigeben. Meine Motivation hier zu helfen lässt etwas nach, TE begnügt sich offensichtlich damit Quelltext zu kopieren und dann nach weiterer Hilfe zu fragen.