<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                企業??AI智能體構建引擎,智能編排和調試,一鍵部署,支持知識庫和私有化部署方案 廣告
                # 簡單動態字符串 Redis 沒有直接使用 C 語言傳統的字符串表示(以空字符結尾的字符數組,以下簡稱 C 字符串), 而是自己構建了一種名為簡單動態字符串(simple dynamic string,SDS)的抽象類型, 并將 SDS 用作 Redis 的默認字符串表示。 在 Redis 里面, C 字符串只會作為字符串字面量(string literal), 用在一些無須對字符串值進行修改的地方, 比如打印日志: ~~~ redisLog(REDIS_WARNING,"Redis is now ready to exit, bye bye..."); ~~~ 當 Redis 需要的不僅僅是一個字符串字面量, 而是一個可以被修改的字符串值時, Redis 就會使用 SDS 來表示字符串值: 比如在 Redis 的數據庫里面, 包含字符串值的鍵值對在底層都是由 SDS 實現的。 舉個例子, 如果客戶端執行命令: ~~~ redis> SET msg "hello world" OK ~~~ 那么 Redis 將在數據庫中創建了一個新的鍵值對, 其中: * 鍵值對的鍵是一個字符串對象, 對象的底層實現是一個保存著字符串?`"msg"`?的 SDS 。 * 鍵值對的值也是一個字符串對象, 對象的底層實現是一個保存著字符串?`"hello?world"`?的 SDS 。 又比如說, 如果客戶端執行命令: ~~~ redis> RPUSH fruits "apple" "banana" "cherry" (integer) 3 ~~~ 那么 Redis 將在數據庫中創建一個新的鍵值對, 其中: * 鍵值對的鍵是一個字符串對象, 對象的底層實現是一個保存了字符串?`"fruits"`?的 SDS 。 * 鍵值對的值是一個列表對象, 列表對象包含了三個字符串對象, 這三個字符串對象分別由三個 SDS 實現: 第一個 SDS 保存著字符串?`"apple"`?, 第二個 SDS 保存著字符串?`"banana"`?, 第三個 SDS 保存著字符串?`"cherry"`?。 除了用來保存數據庫中的字符串值之外, SDS 還被用作緩沖區(buffer): AOF 模塊中的 AOF 緩沖區, 以及客戶端狀態中的輸入緩沖區, 都是由 SDS 實現的, 在之后介紹 AOF 持久化和客戶端狀態的時候, 我們會看到 SDS 在這兩個模塊中的應用。 本章接下來將對 SDS 的實現進行介紹, 說明 SDS 和 C 字符串的不同之處, 解釋為什么 Redis 要使用 SDS 而不是 C 字符串, 并在本章的最后列出 SDS 的操作 API 。
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看