Re: Performanceoptimierung von verknüpften if-Abfragen Kategorie: Programmierung Basic (von Jo - 24.05.2011 6:43) | |
Als Antwort auf Performanceoptimierung von verknüpften if-Abfragen von Jo - 31.01.2011 12:56
| |
> > > > Hallo, > > > > > > > > Peter ich hab zwar dei Buch gelesen aber eine Frage hab ich da noch: > > > > > > > > Eine If Schleifen Konstruktion > > > > > > > > If a=1 And b=1 Then ' sollte schneller sein > > > > > > > > If a=1 Then ' als die Verschachtelung > > > > If b=1 Then > > > > > > > > Frage wird vom Interpreter die eine IF Schleifenprüfung abgebrochen wenn der erste nicht > > zutreffende > > > > Vergleich gefunden ist oder wird die Komplette Abfrage durchlaufen? > > > > > > > > > > > > Gutes Buch übrigens, Glückwunsch! > > > > > > Hallo Michi, > > > > > > ich wei�, ich bin nicht Peter. > > > Habe aber meine Messungen um dein Beispiel erweitert. > > > w steht für Word > > > offizielle Version! > > > Messprog von ErnstH > > > > > > ' > > > ' w1=1 > > > ' w2=1 > > > 'If w1=1 And w2=1 Then ' 628 Takte > > > 'End If > > > > > > ' w1=0 > > > ' w2=1 > > > 'If w1=1 And w2=1 Then ' 644 Takte > > > 'End If > > > ' > > > ' w1=1 > > > ' w2=0 > > > 'If w1=1 And w2=1 Then ' 644 Takte > > > 'End If > > > ' > > > ' w1=0 > > > ' w2=0 > > > 'If w1=1 And w2=1 Then ' 644 Takte > > > 'End If > > > ' > > > ' w1=0 > > > ' w2=0 > > > 'If w1=1 Then '323 Takte > > > ' If w2=1 Then > > > ' End If > > > 'End If > > > ' > > > ' w1=1 > > > ' w2=0 > > > 'If w1=1 Then '630 Takte > > > ' If w2=1 Then > > > ' End If > > > 'End If > > > ' > > > ' w1=1 > > > ' w2=1 > > > 'If w1=1 Then '630 Takte > > > ' If w2=1 Then > > > ' End If > > > 'End If > > > ' > > > Viel Spass noch...besonders heut' abend. > > > Manfred > > > > Hallo Peter, > > können zukünftig die logischen Verknüpfungen effektiver vom Interpreter realisiert werden > > (also das erste Nichtzutreffen bricht die weiteren Bewertungen ab) oder ist es gedacht, > > dass die Anwender mehrere if-Abfragen verschachteln? > > > > Ist das ein Thema für eine Beauftragung durch Conrad? > > > > Viele Grü�e > > > > Jo > Hallo Peter, darf ich dich dazu noch um eine kurze Aussage bitten? Danke und viele Grü�e Jo Hallo Peter, in einem momentanen Projekt wo es auf Performance ankommt behelfe ich mir mit der Verschachtelung von && also anstelle von if( (a == b) && (b==c) && (c==d) || �. schreibe ich if(a == b) { if( c==d) { if( e==f) { � } } } Und bei or mit switch case geht mit vielen Einschränkungen anstelle von if( (a == 1) || (a==2) || (a==3) ||�. Der Performanceworkaround switch (a) { case 1: case 2: case 3: break; } Beides ist sehr unschön und beim || geht der Workaround nur in wenigen fällen. Steht eine Verbesserung auf der Roadmap oder ist das auch ein Thema für Herrn Sommer von Conrad? Viele Grü�e Jo | |
Antwort schreiben Antworten: |
Zur Übersicht - INFO - Neueste 50 Beiträge - Neuer Beitrag - Suchen - Zum C-Control-I-Forum - Zum C-Control-II-Forum