Zusammenfassung Koroutinen

 [Vorheriges Kapitel]  [Vorherige Seite]  [Inhaltsverzeichnis]

*Koroutinen sind sinnvoll, wenn

*es mehrere Aktivitäten gibt, die voneinander unabhängig programmiert werden sollen,
 
*die jeweils einen eigenen Status verwalten und
 
*die entweder unabhängig voneinander sind oder in der Rolle von Produzenten und Konsumenten miteinander kommunizieren können.
 

*Synchronisierung und Koroutinen-Verwaltung müssen dabei in entsprechende Module ausgelagert werden, da die direkte Verwendung zu unübersichtlich ist.
 
*Die Ulmer Oberon-Bibliothek bietet verallgemeinerte Synchronisierungsmechanismen und Verwaltungen an über die Module Conditions, Tasks und Jobs.
 
*Alternativen zu Koroutinen sind Continuations (Scheme) und Threads (parallel laufende Kontrollflüsse im gleichen Adreßraum). Continuations sind jedoch schwerer zu implementieren und Threads bringen ein hohes Fehlerrisiko mit sich.
 

 [Vorheriges Kapitel]  [Vorherige Seite]  [Inhaltsverzeichnis]
Copyright © 2004, 2005 Andreas Borchert, in HTML konvertiert am 18.02.2005