简体   繁体   English

Scheme中线程和延续之间的交互信息和示例?

[英]Information and examples of interaction between threads and continuations in Scheme?

I've been using SRFI 18 in different Scheme implementations (Gambit, Gauche and Chicken), and I'd like to know where to find dpcumentation/tutorials /information about the problems that may arise when one uses continuations inside threads? 我一直在不同的Scheme实现中使用SRFI 18(Gambit,Gauche和Chicken),我想知道在哪里可以找到有关在线程中使用连续性时可能出现的问题的文档/教程/信息? I suppose there are lots of issues, like what happens if a thread invokes a continuation that was captured by another thread -- either inside or outside dynamic-wind , and so on. 我想有很多问题,例如,如果一个线程调用由另一个线程捕获的延续(在dynamic-wind内部或外部),会发生什么,等等。

Not just a specification (like the SRFI itself), but tips and code examples, examples of how these issues are dealt with in usual programs. 不仅是规范(如SRFI本身),还包括技巧和代码示例,以及在常规程序中如何处理这些问题的示例。

Is there something like that somewhere? 在某处有类似的东西吗?

You will not find anything like that for Scheme , because there are no threads in the standard specification. 您不会找到Scheme那样的东西,因为标准规范中没有线程。 To make things worse, there will probably be some major differences between implementations because some thread implementations use continuation and some use a more native approach. 更糟的是,实现之间可能会有一些主要差异,因为某些线程实现使用延续,而某些使用更本地化的方法。 (For example, Racket falls in the latter category, and in some cases you can "migrate" continuations between threads.) (例如,Racket属于后一类,在某些情况下,您可以“迁移”线程之间的延续。)

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM