<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[Problem mit Threads unter Windows]]></title><description><![CDATA[<p>Hallo,</p>
<p>ich schreibe eine gtkmm Applikation unter der ich Threads verwenden möchte. Die Threads (es werden beliebig viele) werden von der Klasse Threads verwaltet, in der beliebig viele Objekte einer anderen Klasse erzeugt werden. Deren Methoden werden den Threads übergeben. Gestartet wird das ganze durch das main_window (meine gtkmm Klasse). Zunächst habe ich thread_group aus der boost Bibliothek verwendet. Unter Linux funktionierte dies fehlerfrei. Unter Windows kam es jedoch zu einem Segmentation fault, sobald ich die Threads gestartet habe. Ein backtrace gab folgendes zurück: #0 0x08214dd0 in ?? (). Daraufhin habe ich einen neuen Versuch mit den Threads aus der glibmm Bibliothek gestartet. Auch hier funktioniert es unter Linux wieder fehlerfrei, wohingegen es unter Windows zu dem gleichen Fehler kam. In der Boost::Thread Dokumentation habe ich diesen <a href="http://boost.org/doc/html/thread/implementation_notes.html#thread.implementation_notes.win32" rel="nofollow">Abschnitt</a> gefunden, der das Problem vermutlich erklärt. Allerdings weiß ich momentan nicht, wie sich die hier aufgeführten Fehlerquellen umgehen lassen. Trifft Punkt 2 auf meine gtkmm Klasse zu? Ich weiß leider nicht, was ich mir unter einem &quot;global static object&quot; vorstellen soll.<br />
Kann mir hier irgendjemand weiterhelfen?</p>
<p>Danke</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/203876/problem-mit-threads-unter-windows</link><generator>RSS for Node</generator><lastBuildDate>Sun, 28 Jun 2026 18:56:13 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/203876.rss" rel="self" type="application/rss+xml"/><pubDate>Sun, 27 Jan 2008 17:57:52 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Problem mit Threads unter Windows on Sun, 27 Jan 2008 17:57:52 GMT]]></title><description><![CDATA[<p>Hallo,</p>
<p>ich schreibe eine gtkmm Applikation unter der ich Threads verwenden möchte. Die Threads (es werden beliebig viele) werden von der Klasse Threads verwaltet, in der beliebig viele Objekte einer anderen Klasse erzeugt werden. Deren Methoden werden den Threads übergeben. Gestartet wird das ganze durch das main_window (meine gtkmm Klasse). Zunächst habe ich thread_group aus der boost Bibliothek verwendet. Unter Linux funktionierte dies fehlerfrei. Unter Windows kam es jedoch zu einem Segmentation fault, sobald ich die Threads gestartet habe. Ein backtrace gab folgendes zurück: #0 0x08214dd0 in ?? (). Daraufhin habe ich einen neuen Versuch mit den Threads aus der glibmm Bibliothek gestartet. Auch hier funktioniert es unter Linux wieder fehlerfrei, wohingegen es unter Windows zu dem gleichen Fehler kam. In der Boost::Thread Dokumentation habe ich diesen <a href="http://boost.org/doc/html/thread/implementation_notes.html#thread.implementation_notes.win32" rel="nofollow">Abschnitt</a> gefunden, der das Problem vermutlich erklärt. Allerdings weiß ich momentan nicht, wie sich die hier aufgeführten Fehlerquellen umgehen lassen. Trifft Punkt 2 auf meine gtkmm Klasse zu? Ich weiß leider nicht, was ich mir unter einem &quot;global static object&quot; vorstellen soll.<br />
Kann mir hier irgendjemand weiterhelfen?</p>
<p>Danke</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1444641</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1444641</guid><dc:creator><![CDATA[basti33]]></dc:creator><pubDate>Sun, 27 Jan 2008 17:57:52 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit Threads unter Windows on Sun, 27 Jan 2008 18:14:05 GMT]]></title><description><![CDATA[<p>In der Fehlerbeschreibung gehts doch um nen deadlock, was willst du damit <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f615.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--confused_face"
      title=":confused:"
      alt="😕"
    /></p>
<p>Schon mal nen debugger benutzt?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1444652</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1444652</guid><dc:creator><![CDATA[&amp;lt;yxcvbnm]]></dc:creator><pubDate>Sun, 27 Jan 2008 18:14:05 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit Threads unter Windows on Sun, 27 Jan 2008 18:27:34 GMT]]></title><description><![CDATA[<p>&lt;yxcvbnm schrieb:</p>
<blockquote>
<p>In der Fehlerbeschreibung gehts doch um nen deadlock, was willst du damit <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f615.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--confused_face"
      title=":confused:"
      alt="😕"
    /></p>
</blockquote>
<p>Was soll ich denn damit &quot;wollen&quot;? Ich will Ratschläge, wie sich dieses Problem umgehen lässt.</p>
<p>&lt;yxcvbnm schrieb:</p>
<blockquote>
<p>Schon mal nen debugger benutzt?</p>
</blockquote>
<p>Durchaus, allerdings weiß ich leider momentan auch nicht, wie mir der jetzt weiterhelfen soll...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1444662</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1444662</guid><dc:creator><![CDATA[basti33]]></dc:creator><pubDate>Sun, 27 Jan 2008 18:27:34 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit Threads unter Windows on Sun, 27 Jan 2008 18:31:51 GMT]]></title><description><![CDATA[<p>Was hat den ein Segmentationfault mit nem deadlock zu tun?</p>
<p>Starte das Programm mit dem Debugger und schau wo der Segmentationfault auftritt.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1444671</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1444671</guid><dc:creator><![CDATA[&amp;lt;yxcvbn]]></dc:creator><pubDate>Sun, 27 Jan 2008 18:31:51 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit Threads unter Windows on Sun, 27 Jan 2008 18:33:57 GMT]]></title><description><![CDATA[<p>Das habe ich bereits geschrieben: #0 0x08214dd0 in ?? ()<br />
Mehr gibt's nicht!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1444672</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1444672</guid><dc:creator><![CDATA[basti33]]></dc:creator><pubDate>Sun, 27 Jan 2008 18:33:57 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit Threads unter Windows on Sun, 27 Jan 2008 19:01:01 GMT]]></title><description><![CDATA[<p>Das ist irgendeine Adresse. <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f644.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--face_with_rolling_eyes"
      title=":rolling_eyes:"
      alt="🙄"
    /><br />
Wenn du Debuggst dann siehst du die stelle im Code, wo der Fehler auftritt.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1444693</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1444693</guid><dc:creator><![CDATA[&amp;lt;yxcvbn]]></dc:creator><pubDate>Sun, 27 Jan 2008 19:01:01 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit Threads unter Windows on Sun, 27 Jan 2008 19:25:10 GMT]]></title><description><![CDATA[<p>Das ist der Stacktrace und der zeigt afaik auf, wo der Fehler aufgetreten ist. Ansonsten nenne mir doch bitte einen anderen Debugger Befehl. Nochmal: es handelt sich hierbei um Code, der unter Linux fehlerfrei funktioniert. Nur unter Windows kommt es in dem Moment, in dem die Threads aktiviert werden zu besagtem Fehler und ich will wissen, wie ich das unter Windows umgehen kann, wofür ich auch den Auszug aus der boost Referenz verlinkt habe!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1444703</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1444703</guid><dc:creator><![CDATA[basti33]]></dc:creator><pubDate>Sun, 27 Jan 2008 19:25:10 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit Threads unter Windows on Sun, 27 Jan 2008 19:32:12 GMT]]></title><description><![CDATA[<p>der tip mit dem debugger ist der einzig richtige. erstens weiss kein mensch, wie dein code aussieht und zweitens wirst du mit einem venünftigen source-level debugger (z.b. der von visual studio) dem fehler selber schnell auf die schliche kommen.<br />
<img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f642.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--slightly_smiling_face"
      title=":)"
      alt="🙂"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1444706</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1444706</guid><dc:creator><![CDATA[debugging-freak]]></dc:creator><pubDate>Sun, 27 Jan 2008 19:32:12 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit Threads unter Windows on Sun, 27 Jan 2008 22:03:17 GMT]]></title><description><![CDATA[<p>Ich hab keine Ahnung, wie ich da ran gehen soll. Ich weiß, dass</p>
<pre><code class="language-cpp">thread = Glib::Thread::create (sigc::mem_fun (*streams [0], &amp;recorder::monitor), false);
</code></pre>
<p>den Fehler auslöst. <strong>Aber ich weiß nicht warum!</strong> Unter Linux funktioniert es auch und eigentlich sollte sich die Threads einer plattformunabhängigen Bibliothek wie glibmm unter Windows genauso verhalten. Als Debugger steht mir nur der gdb zur Verfügung. Ich habe keine Ahnung, wie ich das debuggen soll und ich weiß zu wenig über die Arbeitsweise von Windows um zu erahnen, was den Fehler evtl. ausmachen könnte!</p>
<p>Danke für alle Hinweise</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1444758</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1444758</guid><dc:creator><![CDATA[basti33]]></dc:creator><pubDate>Sun, 27 Jan 2008 22:03:17 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit Threads unter Windows on Sun, 27 Jan 2008 23:57:47 GMT]]></title><description><![CDATA[<p>Besorg dir für Windows Visual C++ 2005 Express oder 2008 Express, die haben einen sehr sehr guten Debugger dabei.</p>
<p>Ansonsten: der Abschnitt aus der Boost.Thread Doku den du verlinkt hast, da gehts nur um Fälle wo in der Initialisierungsphase (also bevor main() läuft) schon Threads erzeugt werden. Das musst du eben vermeiden.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1444788</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1444788</guid><dc:creator><![CDATA[hustbaer]]></dc:creator><pubDate>Sun, 27 Jan 2008 23:57:47 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit Threads unter Windows on Mon, 28 Jan 2008 02:12:57 GMT]]></title><description><![CDATA[<p>Was bringt einem so eine Adresse wie 0x08214dd0 beim debuggen? <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f615.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--confused_face"
      title=":confused:"
      alt="😕"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1444795</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1444795</guid><dc:creator><![CDATA[Debug Interessierter]]></dc:creator><pubDate>Mon, 28 Jan 2008 02:12:57 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit Threads unter Windows on Mon, 28 Jan 2008 04:50:09 GMT]]></title><description><![CDATA[<p>basti33 schrieb:</p>
<blockquote>
<p>Ich hab keine Ahnung, wie ich da ran gehen soll.</p>
</blockquote>
<p>Programmm im Debugger-Modus starten, Fehler erzeugen, anschauen was genau da passiert.</p>
<p>basti33 schrieb:</p>
<blockquote>
<p>Unter Linux funktioniert es auch und eigentlich sollte sich die Threads einer plattformunabhängigen Bibliothek wie glibmm unter Windows genauso verhalten.</p>
</blockquote>
<p>Einer der großen Denkfehler (angehender) Programmierer ist es zu glauben, ein &quot;nicht abstürzen&quot; sei das gleiche wie &quot;funktioniert&quot;. Das ist aber nicht der Fall. Möglicherweise ist Dein Code grundsätzlich falsch, aber auf Grund eines Zufalls/Nebeneffekts stürzt das unter Linux nicht ab. Stichwort: Programming by accident</p>
<p>basti33 schrieb:</p>
<blockquote>
<p>Ich habe keine Ahnung, wie ich das debuggen soll und ich weiß zu wenig über die Arbeitsweise von Windows um zu erahnen, was den Fehler evtl. ausmachen könnte!</p>
</blockquote>
<p>UNd ebenso haben Wir keine Ahnung wie Dein Sourcecode aussieht, daher ist es faktisch unmöglich Dir zu sagen was Du falsch machst.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1444799</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1444799</guid><dc:creator><![CDATA[oks]]></dc:creator><pubDate>Mon, 28 Jan 2008 04:50:09 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit Threads unter Windows on Mon, 28 Jan 2008 09:16:28 GMT]]></title><description><![CDATA[<p>Debug Interessierter schrieb:</p>
<blockquote>
<p>Was bringt einem so eine Adresse wie 0x08214dd0 beim debuggen?</p>
</blockquote>
<p>die adresse allein? --&gt; nichts!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1444865</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1444865</guid><dc:creator><![CDATA[vs2005-fan]]></dc:creator><pubDate>Mon, 28 Jan 2008 09:16:28 GMT</pubDate></item></channel></rss>