其實已經release一兩個禮拜了
只是今天用SSL老是crash, 翻了翻mail list看到有人說0.3.8可以解決, 就順手來更新了...
asio 0.3.8為了符合TR2 networking proposal, 在error handling上做了不小的改變
例如0.3.7的boost::asio::error, 在0.3.8通通不見了, 取而代之的是boost::system::error_code
(Boost System也是為了TR2而生的, 寫過socket程式的人都知道, 在win32底下我們要用WSAGetLastError()來取得error code, 在linux下則是用errno, 不怎麼方便, Boost System解決了這個問題)
除了error code, 本來的error handler也不見了
0.3.7會pass像boost::asio::ignore_error()這樣的error handler去取error
0.3.8直接把boost::system::error_code用pass-by-reference傳進去, 看起來清楚多了, 不過我覺得比較不方便一點, 因為我喜歡ignore error......
P.S. 為什麼asio明明看起來就像是網路的library, 名字卻要取為asio呢?
這是因為作者的原始初衷是asynchronous IO的concept, 只是目前只有網路先被implement出來......
不過asio的asynchronous concept, 一開始雖然很不習慣, 但卻是很不賴的思考邏輯喔
2007年11月6日 星期二
訂閱:
張貼留言 (Atom)
沒有留言:
張貼留言