2010-11-21 3 views
2

Ich habe SRFI 18 in verschiedenen Scheme-Implementierungen (Gambit, Gauche und Chicken) verwendet, und ich würde gerne wissen, wo man Dokumentation/Tutorials/Informationen über die Probleme finden kann, die auftreten können, wenn man Fortsetzungen in Threads verwendet? Ich vermute, es gibt viele Probleme, wie zum Beispiel, wenn ein Thread eine Fortsetzung aufruft, die von einem anderen Thread erfasst wurde - entweder innerhalb oder außerhalb von dynamic-wind und so weiter.Informationen und Beispiele für die Interaktion zwischen Threads und Fortsetzungen in Schema?

Nicht nur eine Spezifikation (wie die SRFI selbst), aber Tipps und Codebeispiele, Beispiele, wie diese Probleme in üblichen Programmen behandelt werden.

Gibt es irgendwo so etwas?

Antwort

1

Sie werden nichts dergleichen für Schema finden, weil es keine Threads in der Standardspezifikation gibt. Um die Dinge noch schlimmer zu machen, wird es wahrscheinlich einige wesentliche Unterschiede zwischen Implementierungen geben, da einige Thread-Implementierungen eine Fortsetzung verwenden und einige einen nativeren Ansatz verwenden. (Zum Beispiel fällt Racket in die letztere Kategorie, und in einigen Fällen können Sie Fortsetzungen zwischen Threads "migrieren".)

+1

"Es gibt keine Threads in der Standardspezifikation" - ja, aber es gibt einen SRFI (18) es beschreibt, und einige Scheme-Implementierungen unterstützen es ... – Jay

+0

"Support" für diese srfi kann fraglich sein, aber wenn Sie es wissen, dann können Sie es einfach lesen - sorgfältig. Es gibt einen Abschnitt über Fortsetzungen und dynamische Winde usw. –

Verwandte Themen