2010-11-21 57 views
2

我一直在不同的Scheme实现(Gambit,Gauche和Chicken)中使用SRFI 18,并且我想知道在线程内部使用continuations时可能出现的问题的位置在哪里可以找到dpcumentation/tutorials/information? 我想有很多问题,比如如果线程调用另一个线程捕获的延续(在dynamic-wind之内或之外)等等,会发生什么情况。Scheme中的线程和连续之间的交互信息和示例?

不仅仅是一个规范(如SRFI本身),而是提示和代码示例,这些问题如何在通常的程序中处理。

有没有这样的地方?

回答

1

因为标准规范中没有线程,所以对于计划,您不会找到类似的东西。更糟糕的是,实现之间可能会有一些主要差异,因为某些线程实现使用了延续,有些使用更原生的方法。 (例如,Racket属于后者类别,并且在某些情况下,您可以在线程之间“迁移”延续。)

+1

“标准规范中没有线程” - 是的,但存在SRFI(18)描述它,一些Scheme实现支持它... – Jay 2010-11-21 18:02:36

+0

对该srfi的“支持”可能是有问题的,但如果你知道它,那么你可以仔细阅读它。它有一个关于延续和动态风等部分。 – 2010-11-21 22:17:41