GETするコードを書いて動かしてみました。Bodyを変数に格納するためにコールバックを使うのですが、コールバックの中身が思ったよりも複雑になっていたので、その理由を調べてみました。標準エラー出力にログを吐いてみたら(fprintfのところ)、やはりそうでした。1回のリクエストで17回もコールバックが呼ばれてしました。16517で、このコールバックはどのタイミングでどこから呼ばれるのだろう?と思ってstraceしてみたらこんな感じでした。いうシステムコールが使われていました。実行可能な状態になるのを待つ。まとめlibcurlのCURLOPT_WRITEFUNCTIONコールバックは1リクエストで複数回呼ばれる。pollシステムコールが発行されたタイミングで呼ばれるlibcurlはHTTPコンテンツを受信する際にpollシステムコールを使っている。HTTPLTSVパーサ(ltsview)をC言語で実装しました。