<?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[GetSystemTime und Uhr-Thread - 100% Systemauslastung.]]></title><description><![CDATA[<p>Hallo und guten Tag.</p>
<p>Wenn ich die Windows Funktion GetSystemTime() verwende, dann bekomme ich nicht die wirkliche Systemzeit, welche ja dann UTC vorliegt, was ja Greenwich entspricht.<br />
Wenn ich die Zeit z.B. um 15.00Uhr aufrufe, dann bekomme ich 13.00Uhr zurück.<br />
Sollte ich nicht 14.00Uhr zurückbekommen? Weil Greenwich ist ja -1.00h?</p>
<p>Des Weiteren verwende ich einen Thread, mit welchem ich die Zeit documentiere.<br />
D.h. dieser thread ist ein Counter für die Zeit.</p>
<p>Jetzt benötigt dieser thread aber wieder einmal 100% CPU Leistung.<br />
Wie kann ich es so machen, dass der nicht 100% CPU Leistung benötigt?</p>
<p>Die Game-Loop, die ich da verwende, benötigt z.B. nur das was nötig ist. Also nicht durchgehend 100% CPU Leistung. Der thread jetzt aber schon.</p>
<p>Ich hätte das gerne so, dass auch dieser &quot;Timethread&quot; nur das benötigt, was er wirklich braucht, und das soll nur die Leistung sein, die nötig ist um den Zeituntetschied zu berechnen und gegebenenfalls die Zahlen hochzählen.</p>
<p>Mir ist schon klar das dieser thread durchgehend ausgeführt wird und das dann eben die Zeitberechnung, die im thread durchgeführt wird, auch durchgehend ausgeführt wird. Wie kann ich das also so begrenzen, dass ich nicht durchgehend 100% Systemauslastung habe?<br />
Mit Sleep()? - Nein.<br />
Ich mach das mit dem &quot;Performance Counter&quot;, also die Zeitdifferenz errechnen.<br />
Da kann ich ja nicht einfach Sleep() dazwischen haun. Oder?</p>
<p>Ich hab mir gedacht, ich mach das mit der Zeit in einem extra thread, da ja mal Zeitengpässe im Heuptprogramm entstehen können, so dass die Zeit ungenau wird.<br />
So z.B. mit WM_TIMER. Oder kann das nicht passieren?</p>
<p>Nichtsdestotrotz, wie kann man das mit den 100% Systemauslastung begrenzen?</p>
<p>Danke und Gruß<br />
Alex</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/159044/getsystemtime-und-uhr-thread-100-systemauslastung</link><generator>RSS for Node</generator><lastBuildDate>Tue, 21 Jul 2026 00:49:17 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/159044.rss" rel="self" type="application/rss+xml"/><pubDate>Mon, 11 Sep 2006 14:08:36 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to GetSystemTime und Uhr-Thread - 100% Systemauslastung. on Mon, 11 Sep 2006 14:08:36 GMT]]></title><description><![CDATA[<p>Hallo und guten Tag.</p>
<p>Wenn ich die Windows Funktion GetSystemTime() verwende, dann bekomme ich nicht die wirkliche Systemzeit, welche ja dann UTC vorliegt, was ja Greenwich entspricht.<br />
Wenn ich die Zeit z.B. um 15.00Uhr aufrufe, dann bekomme ich 13.00Uhr zurück.<br />
Sollte ich nicht 14.00Uhr zurückbekommen? Weil Greenwich ist ja -1.00h?</p>
<p>Des Weiteren verwende ich einen Thread, mit welchem ich die Zeit documentiere.<br />
D.h. dieser thread ist ein Counter für die Zeit.</p>
<p>Jetzt benötigt dieser thread aber wieder einmal 100% CPU Leistung.<br />
Wie kann ich es so machen, dass der nicht 100% CPU Leistung benötigt?</p>
<p>Die Game-Loop, die ich da verwende, benötigt z.B. nur das was nötig ist. Also nicht durchgehend 100% CPU Leistung. Der thread jetzt aber schon.</p>
<p>Ich hätte das gerne so, dass auch dieser &quot;Timethread&quot; nur das benötigt, was er wirklich braucht, und das soll nur die Leistung sein, die nötig ist um den Zeituntetschied zu berechnen und gegebenenfalls die Zahlen hochzählen.</p>
<p>Mir ist schon klar das dieser thread durchgehend ausgeführt wird und das dann eben die Zeitberechnung, die im thread durchgeführt wird, auch durchgehend ausgeführt wird. Wie kann ich das also so begrenzen, dass ich nicht durchgehend 100% Systemauslastung habe?<br />
Mit Sleep()? - Nein.<br />
Ich mach das mit dem &quot;Performance Counter&quot;, also die Zeitdifferenz errechnen.<br />
Da kann ich ja nicht einfach Sleep() dazwischen haun. Oder?</p>
<p>Ich hab mir gedacht, ich mach das mit der Zeit in einem extra thread, da ja mal Zeitengpässe im Heuptprogramm entstehen können, so dass die Zeit ungenau wird.<br />
So z.B. mit WM_TIMER. Oder kann das nicht passieren?</p>
<p>Nichtsdestotrotz, wie kann man das mit den 100% Systemauslastung begrenzen?</p>
<p>Danke und Gruß<br />
Alex</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1135215</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1135215</guid><dc:creator><![CDATA[DeineMutter]]></dc:creator><pubDate>Mon, 11 Sep 2006 14:08:36 GMT</pubDate></item><item><title><![CDATA[Reply to GetSystemTime und Uhr-Thread - 100% Systemauslastung. on Mon, 11 Sep 2006 14:12:33 GMT]]></title><description><![CDATA[<p>DeineMutter schrieb:</p>
<blockquote>
<p>Hallo und guten Tag.</p>
<p>Wenn ich die Windows Funktion GetSystemTime() verwende, dann bekomme ich nicht die wirkliche Systemzeit, welche ja dann UTC vorliegt, was ja Greenwich entspricht.<br />
Wenn ich die Zeit z.B. um 15.00Uhr aufrufe, dann bekomme ich 13.00Uhr zurück.<br />
Sollte ich nicht 14.00Uhr zurückbekommen? Weil Greenwich ist ja -1.00h?</p>
</blockquote>
<p>Wir haben grad noch Sommerzeit <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>
]]></description><link>https://www.c-plusplus.net/forum/post/1135219</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1135219</guid><dc:creator><![CDATA[THX 1138]]></dc:creator><pubDate>Mon, 11 Sep 2006 14:12:33 GMT</pubDate></item><item><title><![CDATA[Reply to GetSystemTime und Uhr-Thread - 100% Systemauslastung. on Tue, 12 Sep 2006 13:45:18 GMT]]></title><description><![CDATA[<p>Ach so... Danke.<br />
Daran hab ich nicht gedacht.</p>
<p>Und was ist mit der CPU Auslastung?<br />
Weiß das keiner?</p>
<p>Gruß<br />
Alex</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1135889</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1135889</guid><dc:creator><![CDATA[DeineMutter]]></dc:creator><pubDate>Tue, 12 Sep 2006 13:45:18 GMT</pubDate></item><item><title><![CDATA[Reply to GetSystemTime und Uhr-Thread - 100% Systemauslastung. on Tue, 12 Sep 2006 14:05:21 GMT]]></title><description><![CDATA[<pre><code class="language-cpp">Sleep(1000);
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1135908</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1135908</guid><dc:creator><![CDATA[PhoeNix_FasT]]></dc:creator><pubDate>Tue, 12 Sep 2006 14:05:21 GMT</pubDate></item><item><title><![CDATA[Reply to GetSystemTime und Uhr-Thread - 100% Systemauslastung. on Tue, 12 Sep 2006 14:18:20 GMT]]></title><description><![CDATA[<p>du schreibst was von timer - da denk ich an MFC - da kann man festlegen in welchen abstaenden der timerdurchlauf funktionieren soll in ms {millisekunden}</p>
<pre><code class="language-cpp">SetTimer (1, 1000, NULL);
</code></pre>
<p>das setzt den timer auf 1000ms</p>
<p>weiss nur nicht obs sowas in der winapi gibt - hab grad den petzold nicht zur hand {o;</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1135926</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1135926</guid><dc:creator><![CDATA[EXDW]]></dc:creator><pubDate>Tue, 12 Sep 2006 14:18:20 GMT</pubDate></item><item><title><![CDATA[Reply to GetSystemTime und Uhr-Thread - 100% Systemauslastung. on Tue, 12 Sep 2006 16:35:28 GMT]]></title><description><![CDATA[<p>Mr Evil schrieb:</p>
<blockquote>
<p>du schreibst was von timer - da denk ich an MFC - da kann man festlegen in welchen abstaenden der timerdurchlauf funktionieren soll in ms {millisekunden}</p>
<pre><code class="language-cpp">SetTimer (1, 1000, NULL);
</code></pre>
</blockquote>
<p>Das ist aber keine MFC, sondern WinAPI <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>
]]></description><link>https://www.c-plusplus.net/forum/post/1136031</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1136031</guid><dc:creator><![CDATA[CodeFinder]]></dc:creator><pubDate>Tue, 12 Sep 2006 16:35:28 GMT</pubDate></item><item><title><![CDATA[Reply to GetSystemTime und Uhr-Thread - 100% Systemauslastung. on Wed, 13 Sep 2006 07:59:46 GMT]]></title><description><![CDATA[<p>darum sagte ich ja:</p>
<p>[quote=Mr Evil]&quot;weiss nur nicht obs sowas in der winapi gibt - hab grad den petzold nicht zur hand {o;&quot;[/quote]</p>
<p>evtl gibt was aehnliches {o;</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1136384</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1136384</guid><dc:creator><![CDATA[EXDW]]></dc:creator><pubDate>Wed, 13 Sep 2006 07:59:46 GMT</pubDate></item><item><title><![CDATA[Reply to GetSystemTime und Uhr-Thread - 100% Systemauslastung. on Wed, 13 Sep 2006 11:59:34 GMT]]></title><description><![CDATA[<p>Ja, darum schreib ich ja auch in ins Win32 API board... <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>Aber nochmal.</p>
<p>Was ist wenn die Main-loop etwas länger zum rendern benötigt.<br />
Sagen wir mal, die Scene braucht länger als eine Sekunde, was natürlich nicht so toll wäre...<br />
Dann wird ja die WM_TIMER message auch nicht nach einer Sekunde abgearbeitet, sondern etwas später. Das geht doch nicht!!!</p>
<p>Wie auch immer, ich habs ja oben schon deutlich genug geschrieben.<br />
Danke für die Lösung des ersten Problems</p>
<p>Gruß<br />
Alex</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1136571</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1136571</guid><dc:creator><![CDATA[DeineMutter]]></dc:creator><pubDate>Wed, 13 Sep 2006 11:59:34 GMT</pubDate></item></channel></rss>