Da immer wieder leute fragen, ob es möglich ist mehrere funktionen nebeneinander her laufen zu lassen, und ich zu faul bin ein tutorial zu schreiben, hier mal ein kleiner beispiel code der allgemein immer funktionieren sollte:
da auch sleeps nutzbar sein sollen, ohne dabei das script zu blockieren, habe ich mir mal ein system ausgedacht, dass die zum jeweiligen "thread" gehörigen aktionen durchnummeriert, und so sleeps per timer einzeln steuern kann
hierbei handelt es sich natürlich nicht um echtes multithreading. alles läuft in einem thread, wird jedoch ohne jegliche script blockierungen "gleichzeitig" ausgeführt.
die activation funktion ist zuständig für das starten und stopen der "threads". habe mal gleich noch mit eingebaut, dass sie auch in der lage ist controls zu bearbeiten (zb button texte ändern auf start/stop).
bei den funktionen und sleeps steht $action für die jeweilige thread bezeichnung.
hier mal ein beispiel, wodurch das ganze hoffentlich klar wird:
wir man hierran erkennt, laufen die einzelnen "threads" in sich nacheinander ab, aber global nebeneinander her.
da auch sleeps nutzbar sein sollen, ohne dabei das script zu blockieren, habe ich mir mal ein system ausgedacht, dass die zum jeweiligen "thread" gehörigen aktionen durchnummeriert, und so sleeps per timer einzeln steuern kann
hierbei handelt es sich natürlich nicht um echtes multithreading. alles läuft in einem thread, wird jedoch ohne jegliche script blockierungen "gleichzeitig" ausgeführt.
die activation funktion ist zuständig für das starten und stopen der "threads". habe mal gleich noch mit eingebaut, dass sie auch in der lage ist controls zu bearbeiten (zb button texte ändern auf start/stop).
bei den funktionen und sleeps steht $action für die jeweilige thread bezeichnung.
hier mal ein beispiel, wodurch das ganze hoffentlich klar wird:
wir man hierran erkennt, laufen die einzelnen "threads" in sich nacheinander ab, aber global nebeneinander her.