<?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: Auslastung]]></title><description><![CDATA[<p>Hallo liebe Community.</p>
<p>Arbeite in letzter Zeit an einem Programm, was lediglich die Verfügbarkeit eines oder mehrer Server abfragen soll. Damit man es auch nebenbei laufen lassen kann, soll die Auslastung natürlich so gering wie möglich sein. Während der Pings zeigt der Taskmanager 00 an, jedoch bei meiner &quot;Warten-Anzeige&quot; steigt die Auslastung auf ca. 12-13%, was nicht so toll ist, da diese Anzeige ja eigentlich nciht wirklich was macht. Vielleicht hat irgendwer ja eine Idee, warum gerade diese Funktion die Auslastung nach oben treibt. Eventuell liegt es auch an der Countdownschleife ich bin mir nicht ganz sicher.</p>
<p>Die Anzeige.</p>
<pre><code class="language-cpp">void vWait()
{
    static int i = 0;

    switch( i )
    {
        case 0: cout &lt;&lt; &quot;                      &quot;;
                break;
        case 1: cout &lt;&lt; &quot;\rWarte auf Ping        &quot;;
                break;
        case 2: cout &lt;&lt; &quot;\rWarte auf Ping .      &quot;;
                break;
        case 3: cout &lt;&lt; &quot;\rWarte auf Ping . .    &quot;;
                break;
        case 4: cout &lt;&lt; &quot;\rWarte auf Ping . . .  &quot;;
                i = 0;
                break;

    }
        i++;
}
</code></pre>
<p>Der Einsatz der Funktion und die Countdownschleife.</p>
<pre><code class="language-cpp">do
        {
            n += tc; // Zeit wird zu n hinzuaddiert, damit der Zähler vom Neuen beginnt.

        cout &lt;&lt; endl;

        for( n; n &gt; -1; n-- ) // Zähler-Schleife
        {
        // Taste zum Abbrechen
            if( kbhit() )
                {
                    cancel = true;
                    break;
                }

            vWait();
            cout &lt;&lt; &quot;(&quot; &lt;&lt; n &lt;&lt; &quot;)          &quot; &lt;&lt; &quot;\r&quot;; // Leerzeichen, um unschönen Bug zu beheben..
            wait (1);
        }

        cout &lt;&lt; endl;
        cout &lt;&lt; endl;
</code></pre>
<p>Danke im Voraus <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/topic/276499/problem-auslastung</link><generator>RSS for Node</generator><lastBuildDate>Wed, 26 Aug 2026 09:06:17 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/276499.rss" rel="self" type="application/rss+xml"/><pubDate>Wed, 03 Nov 2010 11:34:46 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Problem: Auslastung on Wed, 03 Nov 2010 11:34:46 GMT]]></title><description><![CDATA[<p>Hallo liebe Community.</p>
<p>Arbeite in letzter Zeit an einem Programm, was lediglich die Verfügbarkeit eines oder mehrer Server abfragen soll. Damit man es auch nebenbei laufen lassen kann, soll die Auslastung natürlich so gering wie möglich sein. Während der Pings zeigt der Taskmanager 00 an, jedoch bei meiner &quot;Warten-Anzeige&quot; steigt die Auslastung auf ca. 12-13%, was nicht so toll ist, da diese Anzeige ja eigentlich nciht wirklich was macht. Vielleicht hat irgendwer ja eine Idee, warum gerade diese Funktion die Auslastung nach oben treibt. Eventuell liegt es auch an der Countdownschleife ich bin mir nicht ganz sicher.</p>
<p>Die Anzeige.</p>
<pre><code class="language-cpp">void vWait()
{
    static int i = 0;

    switch( i )
    {
        case 0: cout &lt;&lt; &quot;                      &quot;;
                break;
        case 1: cout &lt;&lt; &quot;\rWarte auf Ping        &quot;;
                break;
        case 2: cout &lt;&lt; &quot;\rWarte auf Ping .      &quot;;
                break;
        case 3: cout &lt;&lt; &quot;\rWarte auf Ping . .    &quot;;
                break;
        case 4: cout &lt;&lt; &quot;\rWarte auf Ping . . .  &quot;;
                i = 0;
                break;

    }
        i++;
}
</code></pre>
<p>Der Einsatz der Funktion und die Countdownschleife.</p>
<pre><code class="language-cpp">do
        {
            n += tc; // Zeit wird zu n hinzuaddiert, damit der Zähler vom Neuen beginnt.

        cout &lt;&lt; endl;

        for( n; n &gt; -1; n-- ) // Zähler-Schleife
        {
        // Taste zum Abbrechen
            if( kbhit() )
                {
                    cancel = true;
                    break;
                }

            vWait();
            cout &lt;&lt; &quot;(&quot; &lt;&lt; n &lt;&lt; &quot;)          &quot; &lt;&lt; &quot;\r&quot;; // Leerzeichen, um unschönen Bug zu beheben..
            wait (1);
        }

        cout &lt;&lt; endl;
        cout &lt;&lt; endl;
</code></pre>
<p>Danke im Voraus <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/1974579</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1974579</guid><dc:creator><![CDATA[Chroma]]></dc:creator><pubDate>Wed, 03 Nov 2010 11:34:46 GMT</pubDate></item><item><title><![CDATA[Reply to Problem: Auslastung on Wed, 03 Nov 2010 12:12:16 GMT]]></title><description><![CDATA[<p>es liegt an den beiden (bzw allen 3) schleifen.<br />
du könntest überall ein Sleep(wert_in_ms) einbauen.<br />
das du damit systemabhängig wirst, sollte nich so das problem sein - bist du ja mit _kbhit eh schon...<br />
aber für paar zeilen mehr kann man auch eine portable version nehmen:</p>
<pre><code class="language-cpp">/* sleep.h */

namespace sys
{
	void sleep(unsigned int milliseconds);
}

#if defined(_WIN32) || defined(_WIN64)
# include &quot;win/sleep.impl&quot;
#elif defined(xyz)
# include &quot;xyz/sleep.impl&quot;
#else
# error not implemented at this platform
#endif
</code></pre>
<pre><code class="language-cpp">/* win/sleep.impl */

#define NOMINMAX
#include &quot;windows.h&quot;
#undef NOMINMAX
#undef IN
#undef OUT
/* andere böse makros verwerfen */

void sys::sleep(unsigned int milliseconds)
{
	::Sleep(milliseconds);
}
</code></pre>
<pre><code class="language-cpp">/* main.cpp */
#include &lt;iostream&gt;
#include &quot;sleep.h&quot;

int main()
{
	unsigned int ms;
	std::cin &gt;&gt; ms;
	sys::sleep(ms);
}
</code></pre>
<p>sys ist vrmtl nicht der optimale namespace-name - aber daran wirds denke ich nicht scheitern <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="😉"
    /><br />
ich würd ihn aber nicht nehmen, weil sys so klingt, als ob es unter irgend nem system auch mal nen makro sein könnte...<br />
oder schon anderweitig belegt. wollt erst &quot;system&quot; - aber der geht unter windows ja leider nicht - winapi 4tw^^</p>
<p>bb</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1974597</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1974597</guid><dc:creator><![CDATA[unskilled]]></dc:creator><pubDate>Wed, 03 Nov 2010 12:12:16 GMT</pubDate></item><item><title><![CDATA[Reply to Problem: Auslastung on Wed, 03 Nov 2010 12:17:34 GMT]]></title><description><![CDATA[<p>danke erstmal für die antwort, werde den ansatz nachher, wenn ich wieder zuhause bin mal ausprobieren.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1974599</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1974599</guid><dc:creator><![CDATA[Chroma]]></dc:creator><pubDate>Wed, 03 Nov 2010 12:17:34 GMT</pubDate></item></channel></rss>