lgorse
Mitglied
Hallo,
ich würde gerne mit der glibmm einen Thread erstellen. Hab auf der Dokumentationsseite dieses Beispiel gefunden, allerdings ist mir das noch nicht so ganz schlüssig.
Die create-Methode erwartet ja zwei Parameter. Der erste soll in irgendeiner Form die Funtkion darstellen, die aufgerufen werden soll durch den Thread. Allerdings ist es in dem Beispiel eine Methode von einer Klasse, ich würde dort aber gerne nur ein Funktion angeben. Geht das? Der zweite Parameter gibt an, ob der Thread "joinable" ist. Was heißt das? Die Dokumentation meint, dass die Ausführung so lange unterbrochen wird, bis der Thread fertig ist. Stimmt das? Damit ist doch eigentlich der ganze Vorteil eines Threads zerstört. Und noch eine letzte Frage: Wenn ich den Thread mit Glib::Thread::create(...) erstelle, startet er dann auch automatisch?
lg,
lgorse
ich würde gerne mit der glibmm einen Thread erstellen. Hab auf der Dokumentationsseite dieses Beispiel gefunden, allerdings ist mir das noch nicht so ganz schlüssig.
Code:
Glib::Thread *const producer = Glib::Thread::create(sigc::mem_fun(queue, &MessageQueue::producer), true);
Die create-Methode erwartet ja zwei Parameter. Der erste soll in irgendeiner Form die Funtkion darstellen, die aufgerufen werden soll durch den Thread. Allerdings ist es in dem Beispiel eine Methode von einer Klasse, ich würde dort aber gerne nur ein Funktion angeben. Geht das? Der zweite Parameter gibt an, ob der Thread "joinable" ist. Was heißt das? Die Dokumentation meint, dass die Ausführung so lange unterbrochen wird, bis der Thread fertig ist. Stimmt das? Damit ist doch eigentlich der ganze Vorteil eines Threads zerstört. Und noch eine letzte Frage: Wenn ich den Thread mit Glib::Thread::create(...) erstelle, startet er dann auch automatisch?
lg,
lgorse