<?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[Threads Zeitvorstellung]]></title><description><![CDATA[<p>Hallo,</p>
<p>Ich frage mich mal, wie oft werden die zuteilbaren Threads in einem Programm eigentlich pro sekunde abgewechselt? Wenn ich in meinem Programm 2 oder 3 Threads habe und keiner gibt freiwillig seine Kontrolle früher ab, wie oft wird da pro Sekunde circa zwischen den Threads rotiert wenn sie alle die gleiche normale Priorität haben?</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/128461/threads-zeitvorstellung</link><generator>RSS for Node</generator><lastBuildDate>Thu, 09 Jul 2026 15:34:01 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/128461.rss" rel="self" type="application/rss+xml"/><pubDate>Sat, 03 Dec 2005 20:47:46 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Threads Zeitvorstellung on Sat, 03 Dec 2005 20:47:46 GMT]]></title><description><![CDATA[<p>Hallo,</p>
<p>Ich frage mich mal, wie oft werden die zuteilbaren Threads in einem Programm eigentlich pro sekunde abgewechselt? Wenn ich in meinem Programm 2 oder 3 Threads habe und keiner gibt freiwillig seine Kontrolle früher ab, wie oft wird da pro Sekunde circa zwischen den Threads rotiert wenn sie alle die gleiche normale Priorität haben?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/933457</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/933457</guid><dc:creator><![CDATA[Multikulti]]></dc:creator><pubDate>Sat, 03 Dec 2005 20:47:46 GMT</pubDate></item><item><title><![CDATA[Reply to Threads Zeitvorstellung on Sat, 03 Dec 2005 20:58:31 GMT]]></title><description><![CDATA[<p>Die Zeiteinteilung funktioniert ja primär mal nach Prioritäten.<br />
Wenn aber alle Threads die gleiche Priorität haben, dann wird das Round-Robin Verfahren angewendet und da bekommt jeder Thread ein gewisses &quot;Quantum&quot;.<br />
Dieses Quantum wird bei Thread-Start auf einen festen Wert gesetzt (abhängig vom OS und Version). Dieses Quantum wird bei jedem Timer-Tick (i.d.R. 10-20 ms) um einen bestimten Wert reduziert. Ist das Ergebnis dann 0 oder kleiner so kommt der nächste Thread der gleichen Priorität dran.<br />
Das Quantum kann auch noch durch diverse andere Dinge beeinflusst werden (ForegroundBoots/Variable/Fixed).</p>
<p>Für w2k Pro. z.B. ist der Start-Wert bei 6 und er wird bei jedem Tick um 3 reduziert. Somit läuft hier ein Thread ca. 20-40 ms.<br />
Bei der Server Version ist der Startwert 36 und wird ebenfalls je um 3 reduziert. Somit läuft hier ein Thread wesentlich länger am Stück.</p>
<p>Genaueres findest Du in &quot;Microsoft Windows Internals&quot;:<br />
<a href="http://www.amazon.de/exec/obidos/ASIN/0735619174/qid=1133643464/sr=8-2/ref=sr_8_xs_ap_i2_xgl/028-4966837-6613322" rel="nofollow">http://www.amazon.de/exec/obidos/ASIN/0735619174/qid=1133643464/sr=8-2/ref=sr_8_xs_ap_i2_xgl/028-4966837-6613322</a></p>
<p>In Kapitel 6 auf den Seiten 325-367</p>
]]></description><link>https://www.c-plusplus.net/forum/post/933469</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/933469</guid><dc:creator><![CDATA[Jochen Kalmbach]]></dc:creator><pubDate>Sat, 03 Dec 2005 20:58:31 GMT</pubDate></item></channel></rss>