输入/搜索内容
内置函数
Global
Log
Market
Trade
Account
Futures
Exchange
IO
Network
Storage
Threads
exchange.Go
EventLoop
ctx.subscribe
ctx.poll
Subscription
threading
Thread
ThreadLock
ThreadEvent
ThreadCondition
ThreadDict
Server
Server.addr
Server.close
Server.stop
Server.join
Server.pending
TA
Talib
OS
结构体
内置变量与常量
通用约定
交易所

先关闭服务(同close()),再强制结束所有正在执行的处理函数线程。

stop()

示例

在随机端口启动Http服务,观察处理中的请求数,再优雅关闭。

javascript
function main() { // 端口写 0 表示随机分配空闲端口,实际地址用 addr() 获取 var server = threading.Serve("http://127.0.0.1:0", function (ctx) { Sleep(1000) ctx.write("done") }) Log("listen on", server.addr()) // 输出:listen on 127.0.0.1:<随机端口> // 在另一个线程里发起请求,主线程观察服务状态 threading.Thread(function (addr) { Log("response:", HttpQuery("http://" + addr + "/")) // 输出:response: done(约1秒后) }, server.addr()) Sleep(200) Log("pending:", server.pending()) // 输出:pending: 1(有一个请求正在处理) server.close() // 不再接收新连接,正在处理的请求继续执行 Log("idle:", server.join(5000)) // 输出:idle: true(服务已关闭且请求都处理完了) }

参考

备注

强制结束的效果与terminate相同,处理函数中未发送的应答会丢失。