Computerhilfen.de Logo
Forum
Tipps
News

IF-Schleifen gleichzeitig ausführen

Hi Leute,

ich hab mir heute ein Programm geschrieben (aus langeweile) aber habe nicht hinbekommen mehrere IF-Schleifen gleichzeitig auszuführen - sie laufen alle nacheinander ab.

   If  blabla Then blabla
   EndIf

   If  blabla Then blabla
   EndIf

   If  blabla Then blabla
   EndIf

Ich hab auch schon eine While Schleife drumgemacht und anstatt If-Schleifen Funktionen benutzt aber es hilft alles nichts.
Vielen Dank für eure Hilfe
Aquaplant
 


Antworten zu IF-Schleifen gleichzeitig ausführen:

Hat dir diese Antwort geholfen?

Danke ButtonHilfreiche Antwort Button

Hallo,

mal so versuchen:

If blabla == 1
   Then blablaA
   else if blabla == 2
        then blablaB
   else
        then garnix
EndIf

oder
If blabla==1 or blabla==2 or blabla==3Then blabla
 

Hat dir diese Antwort geholfen?

Danke ButtonHilfreiche Antwort Button

Danke für deine Antwort, aber wird es in beiden Fällen nicht auch hintereinander ausgeführt? Könnte man nicht die If-Schleifen weg und Funktionen draus machen und die alle gleichzeitig starten (ist mir grade so spontan eingefallen)?
Ich mach mal ein Beispiel:
Die Numlock, Capsloch und Scrolllock Tasen sollen sie alle nach unterschiedlichen zufälligen Zeiten an und wieder ausschalten. Bisher läuft es aber nur der Reihe, als nacheinander ab und nicht alles drei gleichzeitig.
Aquaplant

Hat dir diese Antwort geholfen?

Danke ButtonHilfreiche Antwort Button

In der Regel kann ich mir nicht vorstellen, dass diese Routinen gleichezeitig laufen. Denn die Programme laufen doch zeilenorientiert, oder? Demnach läuft der Browser oder Debugger Zeile für Zeile durch und führt je nach Fall die entsprechende Routine aus.

gruß saffi

Hat dir diese Antwort geholfen?

Danke ButtonHilfreiche Antwort Button

Ja, selbst wenn du Funktionen machst, werden die nacheinander ausgeführt. Wenn du es gleichzeitig möchtest, musst du Threads nehmen (oder mehrere Programme).

Und selbst da dürfte die Synchronisierung n Mords "Pain in the Ass" sein.
Es gibt "quasi" Modelle mit denen eine gewisse "Zeitgleichheit" erreicht werden kann (bspw. das anlegen von einem Aktuell Objekt & einem Neu Objekt, so dass Änderungen erst nach Abschluss "eingefügt" werden, etc.) aber echt paralelle Verarbeitung dürfte nicht ganz einfach sein. (Zugriffsmanagment auf gemeinsam genutzte Speicherbereiche, ... - stell dir vor 2 Threads versuchen zeitgleich an die gleiche stelle unterschiedliche Daten zu schreiben, ....)

Entweder du lebst mit der Abarbeitung step by step oder du schaust dich mal nach entsprechenden modellen um.

Hier wird etwas in die Art versucht, das Zeitgleiche Verarbeitung  simuliert wird (Folge einfach n bisschen der Diskussion)


klick

Cheers Dave

Anmerkung: If Anweisungen bzw. Vergleiche sind KEINE Schleifen.
Es wird nichts periodisch wiederholt -> keine schleife.

Hat dir diese Antwort geholfen?

Danke ButtonHilfreiche Antwort Button

Kommt auch auf die Programmiersprache an. In Java ist das z.B. recht einfach gelöst (http://java.sun.com/javase/6/docs/api/java/lang/Thread.html ) und zusammen mit den Monitoren (man sychronized) gibts auch keine racing conditions.

Hast du nicht auch da das Problem, dass ne real-paralelle Abarbeitung nicht stattfindet/stattfinden kann? Spätestens bei gemeinsam schreibendem Zugriff? Real paralell würde ja bedeuten, dass man gleichzeitig (real-gleichzeitig) versucht 2 unterschiedliche Werte zu schreiben, was rein technisch nicht möglich ist, d.h. auch hier würde es tatsächlich zu ner seriellen Verarbeitung kommen?
(Frage zur Abwechslung mal ernst gemeint, da mir keine technische Möglichkeit einfällt wie schreibend real-paralelle verarbeitung möglich wäre.) 

Hat dir diese Antwort geholfen?

Danke ButtonHilfreiche Antwort Button

Es kommt immer darauf an, was genau man machen möchte. Und paralleles Schreiben ist auch nicht wirklich das Problem (natürlich wird es auf der Hardware nicht wirklich parallel ablaufen können). Wenn man auf die gleichen Speicherbereiche zugreift, möchte man das ja im Gegenteil sogar kontrolliert machen und dafür gibts eben diese Monitore, Semaphoren, etc. (die das dann kontrolliert serialisieren, ja)
Was hätte man denn auch davon, wenn gleichzeitig geschrieben wird? Es kann ja doch nur ein Wert hinterher drinstehen...

Was man davon hätte? keine ahnung.
Obs technisch möglich wäre - das war die Frage ;)

Aber gut, das is auch mein Stand, also passts. :) 


« Programmieren eines Buttons in ExcelDevc++ 4.9.9.2 möchte programm schreiben, weiss aber grad ned wie!!!!!! »
 

Schnelle Hilfe: Hier nach ähnlichen Fragen und passenden Tipps suchen!