Fortsetzungen in Java [geschlossen]

9

Ich suche nach neuen Arbeiten, die Fortsetzungen in Java präsentieren. Ich bin auf die gleiche Frage hier gestoßen, aber sie reicht ein oder zwei Jahre zurück.

Es gibt einige Arbeiten wie JavaFlow von Apache, RIFE Continuations (die ich aus irgendeinem Grund jetzt nicht herunterladen kann). Außerdem gibt es einen Blogbeitrag Ich erwähne die Unterstützung in JDK, aber es scheint, dass sich die Unterstützung auf Java 8 erstreckt. Ich denke auch, dass Fortsetzungen auch in recent Scala-Versionen.

Ich suche nach Implementierungen in Java, die das Fortsetzungskonzept präsentieren. Und ich suche nicht nach Werken, die Continuation-Passing-Style (CSP) präsentieren.

Ich wäre dankbar für jede andere Arbeit, die Sie vielleicht kennen.

    
nobeh 17.09.2011, 17:43
quelle

4 Antworten

2

Ich fand diesen Artikel interessant:

Ссылка

Wenn Sie die ganze Sache lesen, werden Sie einen guten Eindruck von den Kompromissen bekommen, die mit der Implementierung von erstklassigen Fortsetzungen über die Bytecode-Manipulation ohne Hilfe der VM verbunden sind.

Im Gegensatz dazu versucht das MLVM-Projekt , sie nativ in der VM zu unterstützen. Es gibt auch Avian , das sowohl Continuations und Tail Call Optimierung.

    
Joel Dice 06.04.2012 23:27
quelle
1

Es ist nicht klar, warum JavaFlow Ihre Anforderungen nicht erfüllen würde. JYield ist eine andere Bibliothek und ich würde mit einem Apache-Projekt beginnen, bevor ich ein Projekt wie JYield mit weniger Unterstützung ausprobieren würde.

    
Chip McCormick 10.12.2011 23:58
quelle
0

Wir haben vor kurzem erstklassige Fortsetzungen zu Kelim hinzugefügt und haben eine 2.0 Pre-Release.

Ссылка

Hier ist ein Ausschnitt, der ein XorShift berechnet (Anzahl mal):

%Vor%

Es wird auch eine Funktion auf höherer Ebene bereitgestellt (Task genannt), die automatisch geplant wird, z. B. weil ein Netzwerkpaket eintrifft oder ein Dateilesevorgang abgeschlossen ist

    
nqzero 09.12.2016 01:45
quelle
0

Checkout kürzlich veröffentlichte experimentelle Unterstützung von Korotinen in Kotlin

Zum Beispiel Code-Snippet unten zeigt, dass Korotinen in Koltin eigentlich leichte Fäden sind. Das Erstellen von 100.000 normalen Threads würde höchstwahrscheinlich einen schwerwiegenden Fehler wie OutOfMemoryError verursachen, aber dieser Code funktioniert gut:

%Vor%

Natürlich gibt es hier keine große Magie und Kotlin wird zur Kompilierzeit etwas Code für Sie generieren, der all diese 100000 Aufgaben in einem ForkJoinPool ausführen wird.

Es gibt viele weitere coole Beispiele in der Dokumentation.

    
Andrey 06.03.2017 09:33
quelle

Tags und Links