<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>

                合規國際互聯網加速 OSASE為企業客戶提供高速穩定SD-WAN國際加速解決方案。 廣告
                # SETRANGE **SETRANGE key offset value** 用 `value` 參數覆寫(overwrite)給定 `key` 所儲存的字符串值,從偏移量 `offset` 開始。 不存在的 `key` 當作空白字符串處理。 [SETRANGE](#setrange) 命令會確保字符串足夠長以便將 `value` 設置在指定的偏移量上,如果給定 `key` 原來儲存的字符串長度比偏移量小(比如字符串只有 `5` 個字符長,但你設置的 `offset` 是 `10` ),那么原字符和偏移量之間的空白將用零字節(zerobytes, `"\x00"` )來填充。 注意你能使用的最大偏移量是 2^29-1(536870911) ,因為 Redis 字符串的大小被限制在 512 兆(megabytes)以內。如果你需要使用比這更大的空間,你可以使用多個 `key` 。 Warning 當生成一個很長的字符串時,Redis 需要分配內存空間,該操作有時候可能會造成服務器阻塞(block)。在2010年的Macbook Pro上,設置偏移量為 536870911(512MB 內存分配),耗費約 300 毫秒, 設置偏移量為 134217728(128MB 內存分配),耗費約 80 毫秒,設置偏移量 33554432(32MB 內存分配),耗費約 30 毫秒,設置偏移量為 8388608(8MB 內存分配),耗費約 8 毫秒。 注意若首次內存分配成功之后,再對同一個 `key` 調用 [SETRANGE](#setrange) 操作,無須再重新內存。 **可用版本:** &gt;= 2.2.0 **時間復雜度:** 對小(small)的字符串,平攤復雜度O(1)。(關于什么字符串是”小”的,請參考 [_APPEND_](append.html#append) 命令)否則為O(M), `M` 為 `value` 參數的長度。 **返回值:** 被 [SETRANGE](#setrange) 修改之后,字符串的長度。 ``` # 對非空字符串進行 SETRANGE redis> SET greeting "hello world" OK redis> SETRANGE greeting 6 "Redis" (integer) 11 redis> GET greeting "hello Redis" # 對空字符串/不存在的 key 進行 SETRANGE redis> EXISTS empty_string (integer) 0 redis> SETRANGE empty_string 5 "Redis!" # 對不存在的 key 使用 SETRANGE (integer) 11 redis> GET empty_string # 空白處被"\x00"填充 "\x00\x00\x00\x00\x00Redis!" ``` ## 模式 因為有了 [SETRANGE](#setrange) 和 [_GETRANGE_](getrange.html#getrange) 命令,你可以將 Redis 字符串用作具有O(1)隨機訪問時間的線性數組,這在很多真實用例中都是非常快速且高效的儲存方式,具體請參考 [_APPEND_](append.html#append) 命令的『模式:時間序列』部分。
                  <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>

                              哎呀哎呀视频在线观看