文件名称:green-threads:Common Lisp 的轻量级线程协作多任务库
文件大小:10KB
文件格式:ZIP
更新时间:2024-07-30 12:38:20
CommonLisp
绿线 Common Lisp 的轻量级线程/协作多任务库。 用法 允许在 CL-CONT 的帮助下进行协作多任务处理以进行延续。 尝试尽可能模仿 BORDEAUX-THREADS API。 让我们展示线程如何工作并构建更高级别的抽象。 MAKE-THREAD 函数接受一个零参数的闭包/函数并开始执行它,因为我们没有使用操作系统线程,它实际上不能抢占线程,所以线程必须通过调用 QUEUE-NEXT 来让步,传递一个包含继续线程并返回。 MAKE-THREAD 有一个可选的关键字参数 :NAME 用于指定线程的名称。 在这个例子中,我们创建了一个立即执行的线程,它创建了一个额外的线程然后继续,它通过调用 QUEUE-NEXT 并传递一个延续来产生。 这允许另一个线程在继续第一个线程之前执行: (use-package :green-threads) (make-thread ( l
【文件预览】:
green-threads-master
----green-threads.asd(1KB)
----t()
--------green-threads.lisp(4KB)
----README.markdown(8KB)
----src()
--------green-threads.lisp(12KB)
----.gitignore(54B)
----green-threads-test.asd(531B)
----LICENSE.txt(1KB)