<?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[Zeit messen]]></title><description><![CDATA[<p>Hallo !</p>
<p>Ich will in einer Schleife eine Abfrage nach einer gewissen Zeit (100 - 1000 ms) machen, allerdings komm ich nicht drauf, wie ich die Zeit messen kann, ich finde nur die Funktionen zur Zeitmessung von Sekunden, gibts auch eine Funktion wo ich die abgelaufene Zeit in ms messen kann?</p>
<p>Zum Beispiel nehm ich eine Variable time, die wird mit der jetzigen Zeit in ms initialisiert, danach frag ich ab ob sich time schon um die Zeit (nach der ich eben messen will) erhöht hat.</p>
<p>Kurz: gibt es eine Funktion mit der man die Zeit in Millisekunden abrufen kann ?</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/207975/zeit-messen</link><generator>RSS for Node</generator><lastBuildDate>Sat, 25 Apr 2026 10:44:22 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/207975.rss" rel="self" type="application/rss+xml"/><pubDate>Thu, 13 Mar 2008 13:10:28 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Zeit messen on Thu, 13 Mar 2008 13:10:28 GMT]]></title><description><![CDATA[<p>Hallo !</p>
<p>Ich will in einer Schleife eine Abfrage nach einer gewissen Zeit (100 - 1000 ms) machen, allerdings komm ich nicht drauf, wie ich die Zeit messen kann, ich finde nur die Funktionen zur Zeitmessung von Sekunden, gibts auch eine Funktion wo ich die abgelaufene Zeit in ms messen kann?</p>
<p>Zum Beispiel nehm ich eine Variable time, die wird mit der jetzigen Zeit in ms initialisiert, danach frag ich ab ob sich time schon um die Zeit (nach der ich eben messen will) erhöht hat.</p>
<p>Kurz: gibt es eine Funktion mit der man die Zeit in Millisekunden abrufen kann ?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1473611</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1473611</guid><dc:creator><![CDATA[abcdefghijklmno]]></dc:creator><pubDate>Thu, 13 Mar 2008 13:10:28 GMT</pubDate></item><item><title><![CDATA[Reply to Zeit messen on Thu, 13 Mar 2008 13:17:55 GMT]]></title><description><![CDATA[<p>Mit der VCL z.B. TDateTime</p>
<p>Aber warum nicht,...</p>
<pre><code class="language-cpp">int delay = 100;
while (true)
{
  // Abfrage
  // HIER STEHT GAAAANZ VIEL CODE

  Idgolbal::Sleep( delay );
}
</code></pre>
<p>Spricht da was gegen?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1473619</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1473619</guid><dc:creator><![CDATA[Slashi]]></dc:creator><pubDate>Thu, 13 Mar 2008 13:17:55 GMT</pubDate></item><item><title><![CDATA[Reply to Zeit messen on Thu, 13 Mar 2008 13:17:27 GMT]]></title><description><![CDATA[<p>Tut mir leid, ich verwende keine Frameworks, nur die C lib und die Winapi</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1473622</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1473622</guid><dc:creator><![CDATA[abcdefghijklmno]]></dc:creator><pubDate>Thu, 13 Mar 2008 13:17:27 GMT</pubDate></item><item><title><![CDATA[Reply to Zeit messen on Thu, 13 Mar 2008 13:17:43 GMT]]></title><description><![CDATA[<p>GetTickCount ()</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1473623</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1473623</guid><dc:creator><![CDATA[Fake oder Echt]]></dc:creator><pubDate>Thu, 13 Mar 2008 13:17:43 GMT</pubDate></item><item><title><![CDATA[Reply to Zeit messen on Thu, 13 Mar 2008 13:19:12 GMT]]></title><description><![CDATA[<p>GetTickCount() war die FUnktion die ich gesucht habe, danke trotzdem ! <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/1473626</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1473626</guid><dc:creator><![CDATA[abdefghijklmo]]></dc:creator><pubDate>Thu, 13 Mar 2008 13:19:12 GMT</pubDate></item><item><title><![CDATA[Reply to Zeit messen on Thu, 13 Mar 2008 13:23:43 GMT]]></title><description><![CDATA[<pre><code class="language-cpp">int delay = 100;
int lastC = GetTickCount();

while( true )
{
  // CODE!

  if ( lastC + delay &gt; GetTickCount() )
  {
    // ABFRAGE

    lastC = GetTickCount();
  }

}
</code></pre>
<p>So würde das aber auf jeden Fall ne gesunde CPU-Last erzeugen. Die einem Kern schlaucht dein Win da auf jeden Fall was. Da ist die Variante oben auf jeden Fall sehr viel sparsamer. Sleep() sollte standart sein wenn mich nicht alles täuscht.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1473631</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1473631</guid><dc:creator><![CDATA[Slashi]]></dc:creator><pubDate>Thu, 13 Mar 2008 13:23:43 GMT</pubDate></item><item><title><![CDATA[Reply to Zeit messen on Thu, 13 Mar 2008 13:36:12 GMT]]></title><description><![CDATA[<p>Genau so sieht die Funktion jetzt aus,</p>
<p>Ich verwende eine Endlosschleife, mit sleep natürlich, wenn ic jetzt noch ein 2. sleep verwenden, anstatt die ms abzufragen die schon vergangen sind, dann würd die schleife bei jedem durchlauf zusätzlich nochmal unterbrochen wegen diesem 2en sleep. Aber du hast recht, wenn bei jedem durchlauf GetTickCount() aufegrufen wird ist das uneffizient, das muss ich noch ändern. Danke für den Hinweis <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/1473639</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1473639</guid><dc:creator><![CDATA[abcdefhgijklm]]></dc:creator><pubDate>Thu, 13 Mar 2008 13:36:12 GMT</pubDate></item><item><title><![CDATA[Reply to Zeit messen on Thu, 13 Mar 2008 13:43:53 GMT]]></title><description><![CDATA[<p>Slashi schrieb:</p>
<blockquote>
<pre><code class="language-cpp">int delay = 100;
int lastC = GetTickCount();

// [...]
</code></pre>
<p>So würde das aber auf jeden Fall ne gesunde CPU-Last erzeugen. Die einem Kern schlaucht dein Win da auf jeden Fall was. Da ist die Variante oben auf jeden Fall sehr viel sparsamer. Sleep() sollte stan**** sein wenn mich nicht alles täuscht.</p>
</blockquote>
<p>Man sollte aber -wenn schon- DWORD und nicht int verwenden, sonst gibts ja noch früher 'n Überlauf (...beachte: GetTickCount fängt nach längerer Zeit wieder bei 0 an, da der Datentyp DWORD -auf einem 32Bit System sizeof(unsigned long) = 4 Bytes- irgendwann 'voll' ist). Des Weiteren sollte das ganze in einen Thread ausgelagert werden, je nachdem was Du vor hast <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="😉"
    /> . <code>::Sleep()</code> gehört zur WinAPI, ja. <code>Idgolbal::Sleep( delay );</code> hingegen nicht.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1473644</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1473644</guid><dc:creator><![CDATA[CodeFinder]]></dc:creator><pubDate>Thu, 13 Mar 2008 13:43:53 GMT</pubDate></item><item><title><![CDATA[Reply to Zeit messen on Thu, 13 Mar 2008 13:54:50 GMT]]></title><description><![CDATA[<p>Ah ok gut zu wissen. Wie gesagt hab immer mit Idglobal::Sleep gearbeitet da war mit nur int als Parameter bekannt.</p>
<p>Ansonsten wenn Du schon mit der WinAPI verheiratet bist wäre doch sicherlich auch ein Timer so intuitiv eine Option!?</p>
<p>Gruß<br />
Das S.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1473658</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1473658</guid><dc:creator><![CDATA[Slashi]]></dc:creator><pubDate>Thu, 13 Mar 2008 13:54:50 GMT</pubDate></item><item><title><![CDATA[Reply to Zeit messen on Thu, 13 Mar 2008 14:48:00 GMT]]></title><description><![CDATA[<p>Also bei mir (32 bit system) ist DWORD und int gleich groß, gneau 4 byte, ob ich jetzt unsigned long, unsigned int, oder DWORD nehme, ist praktisch egal, alles 4 byte. das man statt int unsigned int nehmen sollte war mir sowieso bewußt.<br />
Ein Timer wäre eine gute idee finde ich</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1473722</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1473722</guid><dc:creator><![CDATA[xxxxxxxxxxxxxxx]]></dc:creator><pubDate>Thu, 13 Mar 2008 14:48:00 GMT</pubDate></item><item><title><![CDATA[Reply to Zeit messen on Thu, 13 Mar 2008 14:51:30 GMT]]></title><description><![CDATA[<p>xxxxxxxxxxxxxxx schrieb:</p>
<blockquote>
<p>ob ich jetzt unsigned long ... oder DWORD nehme</p>
</blockquote>
<p>ist auch kein wunder, dass ist genau das gleiche, DWORD ist als unsigned long definiert</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1473726</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1473726</guid><dc:creator><![CDATA[Fake oder Echt]]></dc:creator><pubDate>Thu, 13 Mar 2008 14:51:30 GMT</pubDate></item><item><title><![CDATA[Reply to Zeit messen on Thu, 13 Mar 2008 16:58:05 GMT]]></title><description><![CDATA[<p>xxxxxxxxxxxxxxx schrieb:</p>
<blockquote>
<p>Also bei mir (32 bit system) ist DWORD und int gleich groß, gneau 4 byte, ob ich jetzt unsigned long, unsigned int, oder DWORD nehme, ist praktisch egal, alles 4 byte.</p>
</blockquote>
<p>Da hast Du Recht. Aber schau Dir mal den Return-Typ von GetTickCount an...warum keine Typengleichheit erfüllen, wenns doch so einfach möglich ist <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="😉"
    /> ? Außerdem ist im C/C++ Standard festgelegt, dass <code>char &lt;= short &lt;= int &lt;= long</code> gilt (bezogen auf den verwendeten Speicherplatz). Mit DWORD ist man also in Bezug auf Neuerungen auf der sicheren Seite, da das exakt dem Return-Typ der Funktion entspricht.</p>
<p>xxxxxxxxxxxxxxx schrieb:</p>
<blockquote>
<p>das man statt int unsigned int nehmen sollte war mir sowieso bewußt.</p>
</blockquote>
<p>Das hat auch niemand angesprochen. Mir ging es um den Umstieg auf DWORD! (Was eine Lapalie...)</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1473789</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1473789</guid><dc:creator><![CDATA[CodeFinder]]></dc:creator><pubDate>Thu, 13 Mar 2008 16:58:05 GMT</pubDate></item><item><title><![CDATA[Reply to Zeit messen on Thu, 13 Mar 2008 19:16:21 GMT]]></title><description><![CDATA[<p>Gut dazu ist auch QueryPerformanceCounter</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1473874</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1473874</guid><dc:creator><![CDATA[DaRpH]]></dc:creator><pubDate>Thu, 13 Mar 2008 19:16:21 GMT</pubDate></item></channel></rss>