4

我有一个脚本,它使用 quicklisp 加载 zs3 以访问亚马逊的 S3。

当我使用 clisp 运行脚本时,(zs3:bucket-exists-p "Test")运行时会出现 USOCKET:TIMEOUT-ERROR。

但是,当我使用 sbcl 运行它时,它运行正常。

他们访问 usocket 的方式不同吗?

各自的优缺点是什么?

4

1 回答 1

1

usocket 是一个兼容层,它隐藏了每个 Lisp 实现的底层套接字 API。在某些情况下肯定会出现阻抗不匹配,但在大多数情况下它应该可以正常工作。

我怀疑 zs3 不经常与 CLISP 一起使用(或者可能根本不使用!),您会看到结果。另一方面,人们通常可以期望库在 SBCL 下得到很好的测试,因为这是最流行的实现。

另请注意,线程在 CLISP 中仍处于试验阶段;默认情况下不启用它们。套接字经常与线程混合的事实只会减少 CLISP + usocket 的相对使用。

于 2013-02-25T19:54:18.110 回答