ClojureDocs

名称空间

clojure.core.server

Socket server support

clojure.core.server 包含通过套接字连接和跨网络边界公开 Clojure 环境的函数。如果在 JDK 启动时存在属性 -Dclojure.server.repl="{:port 8881 :accept clojure.core.server/repl}",Clojure 将在指定的端口上启动相关的套接字服务器(或一个以上)。名称空间中的 API 允许以编程方式执行此操作。

clojure.core.server 中的变量

*^%

*session*
无文档

i

io-prepl
prepl 绑定到 *in* 和 *out*,适合与 e.g. server/repl (socket-repl) 配合使用。 :ret 和 :tap 值将由 valf 处理,valf 是一个一个参数的函数或一个指定相同名称的符号(默认 pr-str), Alpha,有变动可能。

p

prepl
具有结构化输出 (用于程序) 的 REPL 从 in-reader (LineNumberingPushbackReader) 读取表单来计算,关闭输入或传递表单 :repl/quit 将导致其返回,调用具有数据 out-fn,数据之一:{:tag:ret:val val;;计算结果或 Throwable->map 数据(如果抛出异常):ns ns-name-string:ms long;;以毫秒为单位的计算时间:form string;;如果成功读取:exception true;;如果抛出异常} {:tag:out:val string};从 期间计算中的 *out* 得到的字符{:tag:err:val string};从期间计算中的 *err* 得到的字符{:tag:tap:val val};从 tap> 的值中得到的值在任何时间(即在计算之间)可能产生多个 :out 或 :err,但只产生一个 :ret 响应在计算期间如果尝试读取 *in*,它将从 in-reader 读取,除非提供了 :stdin Alpha,有变动可能。

r

remote-prepl
通过套接字将 [io-]prepl 转发到远程,进而通过 in-reader 和 out-fn 实现 prepl。消息将由 readf 读取,readf 是 LineNumberingPushbackReader 的一个函数和 EOF 值或一个指定相同名称的符号(默认 #(read %1 false %2)),:ret 和 :tap 值将由 valf 处理,valf 是一个一个参数的函数或一个指定相同名称的符号(默认 read-string)。如果该函数抛出,:val 将不被处理。Alpha,有变动可能。
repl
具有可附加套接字服务器预定义挂钩的 REPL。
repl-init
在用户名称空间中初始化 repl 并进行标准 repl 要求。
repl-read
增强用于支持 :repl/quit 的 :read hook。

s

start-server
给定指定的选项启动套接字服务器::地址主机或地址、字符串,默认为环回地址:端口、整数,必需:名称,必需:要调用的接受函数的命名空间符号必需:要传递给接受函数的参数向量:将*err*绑定到套接字输出流,默认为 true:服务器线程是守护进程,默认为 true:客户端线程是守护进程,默认为 true 返回服务器套接字。
start-servers
启动系统属性中指定的所有服务器。
stop-server
如果未提供,则停止具有名称的服务器或使用*会话*中的服务器名称。如果停止服务器成功,则返回 true;如果找不到,则返回 nil;或者如果关闭套接字出现错误,则引发。
stop-servers
停止所有服务器都将忽略所有错误,并返回 nil。