2012-04-23 17 views
0

私はさらに多くの質問を思いついた!わーい! (申し訳ありません)APIに関する質問

  1. 「libcouchbase_set_cookie」Apiは何ですか?

私はそれがクッキーを設定することがわかりますが、libcouchbaseのすべてのAPIには、私たちが入れることができるパラメータとして「クッキー」があります。なぜこれを行う別のAPIがありますか?

この「クッキー」の説明は非常に役に立ちます。ありがとうございます。

  1. IO_opt ...私はIOオプションapiを設定しているようです...私はソースフォルダをチェックしますが、これについての説明はcouchbaseの情報を得ることができなかったので役に立ちますウェブサイト
+0

は、couchbase.comのフォーラムでもSDKの下に投稿します –

+0

memcachedでは、Cookieが接続オブジェクトです。私はlibcouchbase APIを見ていない。 – mikewied

+0

ええ、これで確認できますか?これは本当に混乱しています。なぜならすべてのapiはget、store、removeなどのようにすべてが "cookie"パラメータも持っているからです。私は本当にこれらの違いを確認したいと考えています –

答えて

1

、1は、操作のための「ユーザーコンテキスト」です(とコールバックであなたに渡される)と、1つは、実際のlibcouchbase_tハンドルのための「ユーザーコンテキスト」です。 (混乱させることはありませんが、まだiops構造体に関連付けられた3番目のクッキーがあります:))。

libcouchbaseの「クッキー」は、あなたが見つけるだろう、このイ​​ディオムのようになります。いくつかの他のライブラリで

struct frobnicate_st { 
/* private library stuff */ 
... 
/* store anything you like here */ 
void *user_data; 
}; 

単一の操作のコンテキストと有効期間は複数のコールバックにまたがる可能性があり、通常は操作の結果(状態コードと実際の値)をどこかに格納する必要があるため、cookie引数は

libcouchbaseテストスイートの周りを突き抜けて、単純なコンテキストでどのように使用されているかを見ることができます。

+0

おかげさまで、これらの2つのクッキーの違いは分かりました。理解された:D –

0

クッキーは、コンテキストを操作に関連付けるために使用されます。使用しない場合は、NULLに設定する必要はありません。以下は、libcouchbaseプロジェクトのクッキーに関するドキュメントです。クッキーの二つの形式があるlibcouchbaseで

<argument id="cookie" type="const void*"> 
    <m_title>Client cookie</m_title> 
    <description> 
    This is a cookie the client may attach to all requests that will be 
    included in all callbacks. It is not required and may be NULL if 
    you have no need for it. 
    </description> 
    <langtype id="c" type="const void*"/> 
</argument> 
+0

私はこれをテストし、うまく動作します。しかし私の他の質問は、この "libcouchbase_set_cookie" APIです...なぜこれが実際に必要なのかわかりません。他のAPIには実際に独自のCookieパラメータがあるためです。これら2つの違いは何ですか? –