Med*_*her 6 networking tcp clojure
我有以下代码:
(ns alephtest.core
(:use lamina.core aleph.tcp aleph.formats))
(defn connection-established [socket]
(println "Socket connection established")
(on-closed socket #(println "closed"))
(doseq [line (line-seq (java.io.BufferedReader. *in*))]
(enqueue socket line)))
(defn -main []
(on-realized (tcp-client {:host "localhost" :port 9000})
connection-established
#(println "error:" %)))
Run Code Online (Sandbox Code Playgroud)
它现在所做的只是连接到本地服务器,然后将数据从stdin传递到服务器.这部分工作正常(on-closed socket #(println "closed")).如果我在客户端仍在运行时终止服务器,我应该收到一条消息说"关闭"到控制台,但我从来没有这样做过.
我的最终目标是创建某种恢复代码,这样如果服务器发生故障,客户端会在等待服务器返回时排队消息,当服务器确实返回时,它将重新连接并发送排队的一切.
| 归档时间: |
|
| 查看次数: |
606 次 |
| 最近记录: |