Raku-Kurs / Fortgeschritten / Kontrollfluss

Phasers

Ein Phaser ist ein spezieller Block, der automatisch zu einem bestimmten Zeitpunkt im Lebenszyklus eines Programms ausgeführt wird, anstatt dort, wo er im Quellcode steht. Du rufst einen Phaser nicht auf; du sagst nur, wann sein Code ausgeführt werden soll, indem du den Block benennst.

Die gebräuchlichsten Phaser markieren Phasen des Programms als Ganzes:

  • BEGIN wird so früh wie möglich ausgeführt, während das Programm noch kompiliert wird;
  • INIT wird einmal zu Beginn der Ausführung ausgeführt, vor dem Hauptcode;
  • END wird einmal ganz am Ende ausgeführt, nachdem der Hauptcode abgeschlossen ist.

Das folgende Programm platziert diese Phaser zwischen gewöhnlichen Anweisungen. Beachte, dass die Ausgabe nicht der Reihenfolge der Zeilen in der Datei folgt:

say 'main body';
BEGIN say 'BEGIN';
END say 'END';
INIT say 'INIT';

Das Programm gibt aus:

BEGIN
INIT
main body
END

BEGIN wird zuerst ausgeführt, während der Kompilierung. Dann wird zur Laufzeit INIT vor dem Hauptteil ausgeführt. Der Hauptteil wird als Nächstes ausgegeben, und END wird zuletzt ausgeführt, egal wo es geschrieben wurde.

Eine häufige Verwendung von END ist es, eine Zusammenfassung auszugeben oder etwas aufzuräumen, kurz bevor das Programm beendet wird, während BEGIN praktisch für Arbeit ist, die vor allem anderen passieren muss.

Praxis

Lösen Sie 1 Quiz zum Inhalt dieses Themas.

Übungen

Dieser Abschnitt enthält 3 Übungen. Sehen Sie sich alle Themen dieses Abschnitts an, bevor Sie mit den Übungen beginnen.

  1. Abschlussnachricht
  2. Begin zuerst
  3. Die Reihenfolge der ENDs

Kursnavigation

Kontrollfluss   |   Abschlussnachricht