在clojure中使用http-kit进行同步POST

时间:2014-02-27 09:33:41

标签: clojure http-kit

我正在尝试使用clojure中的http-kit客户端库来执行返回promises的同步帖子。有没有办法限制执行实际帖子的线程数?

我可以找到使用内置线程池的所有示例都使用名为request的低级原始函数,但它们都是用于http / get。

由于

1 个答案:

答案 0 :(得分:1)

我假设您已经看过http://http-kit.org/client.html#sync

我的问题是你想做同步POST,还是限制线程数?您可以使用100个线程执行同步POST,只需要您主线程将等待请求返回。

也许更重要的是,为什么要限制线程数?

另请参阅https://github.com/http-kit/http-kit/blob/master/src/org/httpkit/client.clj,特别是request。你可以处理一个参数图,比如 {:url "http://yoursite.com" :worker-pool my-thread-pool-executor}

my-thread-pool-executor必须延长ExecutorService

具体来说,您需要重载submit这是RespListener在http-kit中使用的内容。您可以使submit与您自己的ExecutorService实现同步,以便它在同一个线程上运行。

相关问题