Comment detail

HTTPでGET その2 (Nested Flatten)
(http-get/proxy-&-timeout "http://ja.doukaku.org/feeds/comments/")
;時間内
; ==>http-requestの結果
;タイムアウト時
; ==> nil

Drakmaとタイムアウトの制御に、Portable-Threadsを使ってみました。
・Clozure CL 1.2 Linux/x86_64 
・SBCL 1.0.12 Linux/x86_64 
・Allegro 8.1 Express MacOSX/PPC
・CLISP 2.41 MacOSX/PPC
・LispWorks PE 5.0.1 MacOSX/PPC
で動作確認しています。
;; LispWorks限定ということならhttp-requestはタイムアウト制御の引数を取ることが
;; 可能なようです。
1
2
3
4
5
6
(require :portable-threads)
(require :drakma)

(defun http-get/proxy-&-timeout (uri &optional (expire 1) proxy port)
  (portable-threads:with-timeout (expire nil)
    (drakma:http-request uri :proxy (and proxy `(,proxy ,port)))))

Index

Feed

Other

Link

Pathtraq

loading...