<?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[Ressourcenverbrauch: Thread startet zwei weitere Threads]]></title><description><![CDATA[<p>Hallo Leute,</p>
<p>ich habe mal wieder eine dumme Anfängerfrage:<br />
Ich habe einen Thread, der in einer while-Schleife kontinuierlich Messdaten erhält und verarbeitet (inkl. Ausgabe auf GUI) und zuvor eine Funktion StartMeasurement() ausführt, welche Ihrerseits zwei Threads startet, die ebenfalls jeweils in einer while-Schleife Messwerte von zwei Hardware-Modulen abgreifen. Verarbeitet werden die Messwerte nun wieder im ersten Thread.</p>
<p>Nun meine Frage: Wenn ein Thread zwei weitere startet, werden dann die Ressourcen dieses Threads für die beiden anderen Threads geteilt oder laufen die komplett unabhängig und erhalten volle Ressourcen?</p>
<p>Irgendwie wird die Performance nämlich sehr schlecht, wenn ich beide Hardware-Threads starten lasse, bei nur einem funktioniert alles wunderbar.</p>
<p>Vielen Dank für eure Hilfe,<br />
Jonson</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/294472/ressourcenverbrauch-thread-startet-zwei-weitere-threads</link><generator>RSS for Node</generator><lastBuildDate>Sat, 15 Aug 2026 21:34:51 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/294472.rss" rel="self" type="application/rss+xml"/><pubDate>Tue, 25 Oct 2011 15:44:48 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Ressourcenverbrauch: Thread startet zwei weitere Threads on Tue, 25 Oct 2011 15:44:48 GMT]]></title><description><![CDATA[<p>Hallo Leute,</p>
<p>ich habe mal wieder eine dumme Anfängerfrage:<br />
Ich habe einen Thread, der in einer while-Schleife kontinuierlich Messdaten erhält und verarbeitet (inkl. Ausgabe auf GUI) und zuvor eine Funktion StartMeasurement() ausführt, welche Ihrerseits zwei Threads startet, die ebenfalls jeweils in einer while-Schleife Messwerte von zwei Hardware-Modulen abgreifen. Verarbeitet werden die Messwerte nun wieder im ersten Thread.</p>
<p>Nun meine Frage: Wenn ein Thread zwei weitere startet, werden dann die Ressourcen dieses Threads für die beiden anderen Threads geteilt oder laufen die komplett unabhängig und erhalten volle Ressourcen?</p>
<p>Irgendwie wird die Performance nämlich sehr schlecht, wenn ich beide Hardware-Threads starten lasse, bei nur einem funktioniert alles wunderbar.</p>
<p>Vielen Dank für eure Hilfe,<br />
Jonson</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2135671</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2135671</guid><dc:creator><![CDATA[Jonson86]]></dc:creator><pubDate>Tue, 25 Oct 2011 15:44:48 GMT</pubDate></item><item><title><![CDATA[Reply to Ressourcenverbrauch: Thread startet zwei weitere Threads on Tue, 25 Oct 2011 15:54:21 GMT]]></title><description><![CDATA[<p>Was meinst du mit Resourcen?<br />
Die CPU-Zeit muss natürlich geteilt werden. Der Heap wird auch geteilt. Aber jeder Thread kriegt einen eigenen Thread.</p>
<p>Nach deiner Beschreibung vermute ich, dass die &quot;Hardwarethreads&quot; endlosschleifen ohne sleep ausführen und daurch jede Menge CPU-Zeit auffressen.<br />
Wenn du wirkliche pollen willst/musst, dann solltest du sleeps einbauen. Noch besser ist es mit interrupts oder soetwas wie messages (je nachdem wie nah du an der hardware bist) zu arbeiten, so das die Threads nur aktiv werden, wenn wirklich etwas zum Verarbeiten da ist.</p>
<p>Um was für eine Hardware handelt es sich denn und worüber liest du sie aus?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2135674</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2135674</guid><dc:creator><![CDATA[*Q* 1]]></dc:creator><pubDate>Tue, 25 Oct 2011 15:54:21 GMT</pubDate></item><item><title><![CDATA[Reply to Ressourcenverbrauch: Thread startet zwei weitere Threads on Tue, 25 Oct 2011 15:50:00 GMT]]></title><description><![CDATA[<p>Ein Thread hat in der Regel nur einen Kontext, mehr nicht.<br />
Der wird selbstverständlich nicht geteilt, ist aber auch nicht teuer.</p>
<p>Faustregel: Mehr Threads laufen zu lassen als CPU-Cores vorhanden sind, drückt die Performance.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2135675</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2135675</guid><dc:creator><![CDATA[Ethon_]]></dc:creator><pubDate>Tue, 25 Oct 2011 15:50:00 GMT</pubDate></item><item><title><![CDATA[Reply to Ressourcenverbrauch: Thread startet zwei weitere Threads on Wed, 26 Oct 2011 15:19:19 GMT]]></title><description><![CDATA[<p>okay, schon einmal danke für die Hilfe.</p>
<p>Die Sleeps bringen mir definitiv einiges. Jetzt muss ich nur noch mal überprüfen, wie viele Daten ich in dieser Zeit dann eventuell verliere.</p>
<p>Ich melde mich wieder <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f609.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--winking_face"
      title=";)"
      alt="😉"
    /></p>
<p>Vielen Dank und Grüße,<br />
Jonson</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2136193</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2136193</guid><dc:creator><![CDATA[Jonson86]]></dc:creator><pubDate>Wed, 26 Oct 2011 15:19:19 GMT</pubDate></item><item><title><![CDATA[Reply to Ressourcenverbrauch: Thread startet zwei weitere Threads on Wed, 26 Oct 2011 15:42:30 GMT]]></title><description><![CDATA[<p>Manchmal reicht es schon, statt sleep() ein yield() auszuführen.</p>
<p>EDIT: Plus: Es macht sicher Sinn auch die bereits erwähnte Interrupt-basierte Verarbeitung noch mal zu überdenken. Oder hast Du das schon verworfen?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2136200</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2136200</guid><dc:creator><![CDATA[[[global:guest]]]]></dc:creator><pubDate>Wed, 26 Oct 2011 15:42:30 GMT</pubDate></item><item><title><![CDATA[Reply to Ressourcenverbrauch: Thread startet zwei weitere Threads on Wed, 26 Oct 2011 15:33:24 GMT]]></title><description><![CDATA[<p>Wenn ein Thread lange warten muss, solltest du dein Programm nochmal überdenken.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2136202</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2136202</guid><dc:creator><![CDATA[314159265358979]]></dc:creator><pubDate>Wed, 26 Oct 2011 15:33:24 GMT</pubDate></item></channel></rss>