<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智能體構建引擎,智能編排和調試,一鍵部署,支持知識庫和私有化部署方案 廣告
                # QNetworkDiskCache Class Reference ## [[QtNetwork](index.htm) module] 該QNetworkDiskCache類提供了一個非常基本的磁盤緩存。[More...](#details) 繼承[QAbstractNetworkCache](qabstractnetworkcache.html)。 ### Methods * `__init__ (self, QObject?parent?=?None)` * `QString cacheDirectory (self)` * `int cacheSize (self)` * `clear (self)` * `QIODevice data (self, QUrl?url)` * `int expire (self)` * `QNetworkCacheMetaData fileMetaData (self, QString?fileName)` * `insert (self, QIODevice?device)` * `int maximumCacheSize (self)` * `QNetworkCacheMetaData metaData (self, QUrl?url)` * `QIODevice prepare (self, QNetworkCacheMetaData?metaData)` * `bool remove (self, QUrl?url)` * `setCacheDirectory (self, QString?cacheDir)` * `setMaximumCacheSize (self, int?size)` * `updateMetaData (self, QNetworkCacheMetaData?metaData)` * * * ## Detailed Description 該QNetworkDiskCache類提供了一個非常基本的磁盤緩存。 QNetworkDiskCache使用存儲在它自己的文件中cacheDirectory里面每個URL[QDataStream](qdatastream.html)。文件與文本源MimeType使用qCompress壓縮。每個緩存文件以“[cache_](index.htm#cache)。高速緩存“和結束” “ 。數據被寫入到磁盤中只[insert](qnetworkdiskcache.html#insert)()和[updateMetaData](qnetworkdiskcache.html#updateMetaData)( ) 。 目前,您不能使用一個以上的磁盤緩存共享相同的緩存文件。 QNetworkDiskCache默認情況下限制了緩存將在系統上使用了50MB的空間量。 注意:你必須設置緩存目錄之前它會工作。 :網絡磁盤緩存可以通過啟用 ``` [QNetworkAccessManager](qnetworkaccessmanager.html) *manager = new [QNetworkAccessManager](qnetworkaccessmanager.html)(this); QNetworkDiskCache *diskCache = new QNetworkDiskCache(this); diskCache->setCacheDirectory("cacheDir"); manager->setCache(diskCache); ``` 當發送請求,來控制何時使用緩存以及何時使用網絡的偏好,考慮以下幾點: ``` // do a normal request (preferred from network, as this is the default) [QNetworkRequest](qnetworkrequest.html) request([QUrl](qurl.html)([QString](qstring.html)("http://qt.nokia.com"))); manager->get(request); // do a request preferred from cache [QNetworkRequest](qnetworkrequest.html) request2([QUrl](qurl.html)([QString](qstring.html)("http://qt.nokia.com"))); request2.setAttribute([QNetworkRequest](qnetworkrequest.html).CacheLoadControlAttribute, [QNetworkRequest](qnetworkrequest.html).PreferCache); manager->get(request2); ``` 要檢查是否響應從緩存或從網絡傳來,下面可以應用: ``` void replyFinished([QNetworkReply](qnetworkreply.html) *reply) { [QVariant](qvariant.html) fromCache = reply->attribute([QNetworkRequest](qnetworkrequest.html).SourceIsFromCacheAttribute); qDebug() << "page from cache?" << fromCache.toBool(); } ``` * * * ## Method Documentation ``` QNetworkDiskCache.__init__ (self, QObject?parent?=?None) ``` 該_parent_的說法,如果不是沒有,原因_self_通過Qt的,而不是PyQt的擁有。 創建一個新的磁盤緩存。該_parent_參數被傳遞給[QAbstractNetworkCache](qabstractnetworkcache.html)的構造。 ``` QString QNetworkDiskCache.cacheDirectory (self) ``` 返回在緩存文件將被存儲的位置。 **See also** [setCacheDirectory](qnetworkdiskcache.html#setCacheDirectory)( ) 。 ``` int QNetworkDiskCache.cacheSize (self) ``` 從重新實現[QAbstractNetworkCache.cacheSize](qabstractnetworkcache.html#cacheSize)( ) 。 ``` QNetworkDiskCache.clear (self) ``` 這種方法也是一個Qt槽與C + +的簽名`void clear()`。 從重新實現[QAbstractNetworkCache.clear](qabstractnetworkcache.html#clear)( ) 。 ``` QIODevice QNetworkDiskCache.data (self, QUrl?url) ``` [](qiodevice.html) [從重新實現](qiodevice.html)[QAbstractNetworkCache.data](qabstractnetworkcache.html#data)( ) 。 ``` int QNetworkDiskCache.expire (self) ``` 清除高速緩存中,這樣它的大小是根據最大高速緩存大小。返回高速緩存的當前大小。 當緩存的當前大小大于[maximumCacheSize](qnetworkdiskcache.html#maximumCacheSize)( )舊的緩存文件將被刪除,直到總大小小于90%[maximumCacheSize](qnetworkdiskcache.html#maximumCacheSize)( )開始的最早的第一個使用該文件的創建日期,以確定如何舊緩存文件。 子類可以重新實現這個函數來改變緩存文件將被刪除并考慮到信息的應用程序的順序知道了[QNetworkDiskCache](qnetworkdiskcache.html)沒有,例如的次數的高速緩存訪問。 注意:[cacheSize](qnetworkdiskcache.html#cacheSize)( )調用過期如果當前緩存大小是未知的。 **See also** [maximumCacheSize](qnetworkdiskcache.html#maximumCacheSize)()和[fileMetaData](qnetworkdiskcache.html#fileMetaData)( ) 。 ``` QNetworkCacheMetaData QNetworkDiskCache.fileMetaData (self, QString?fileName) ``` [](qnetworkcachemetadata.html) [返回](qnetworkcachemetadata.html)[QNetworkCacheMetaData](qnetworkcachemetadata.html)對于緩存文件_fileName_。 If _fileName_是不是一個緩存文件[QNetworkCacheMetaData](qnetworkcachemetadata.html)將是無效的。 ``` QNetworkDiskCache.insert (self, QIODevice?device) ``` 從重新實現[QAbstractNetworkCache.insert](qabstractnetworkcache.html#insert)( ) 。 ``` int QNetworkDiskCache.maximumCacheSize (self) ``` 返回磁盤緩存字節當前的最大大小。 **See also** [setMaximumCacheSize](qnetworkdiskcache.html#setMaximumCacheSize)( ) 。 ``` QNetworkCacheMetaData QNetworkDiskCache.metaData (self, QUrl?url) ``` [](qnetworkcachemetadata.html) [從重新實現](qnetworkcachemetadata.html)[QAbstractNetworkCache.metaData](qabstractnetworkcache.html#metaData)( ) 。 ``` QIODevice QNetworkDiskCache.prepare (self, QNetworkCacheMetaData?metaData) ``` [](qiodevice.html) [從重新實現](qiodevice.html)[QAbstractNetworkCache.prepare](qabstractnetworkcache.html#prepare)( ) 。 ``` bool QNetworkDiskCache.remove (self, QUrl?url) ``` 從重新實現[QAbstractNetworkCache.remove](qabstractnetworkcache.html#remove)( ) 。 ``` QNetworkDiskCache.setCacheDirectory (self, QString?cacheDir) ``` 在那里設置緩存文件將被存儲到目錄_cacheDir_ [QNetworkDiskCache](qnetworkdiskcache.html)將創建這個目錄,如果它不存在。 制備的緩存項目將被保存在新的高速緩存目錄被插入時。 **See also** [cacheDirectory](qnetworkdiskcache.html#cacheDirectory)()和[QDesktopServices.CacheLocation](qdesktopservices.html#StandardLocation-enum)。 ``` QNetworkDiskCache.setMaximumCacheSize (self, int?size) ``` 設置磁盤緩存是最大尺寸_size_以字節為單位。 如果新的尺寸越小則當前緩存大小,則緩存將調用[expire](qnetworkdiskcache.html#expire)( ) 。 **See also** [maximumCacheSize](qnetworkdiskcache.html#maximumCacheSize)( ) 。 ``` QNetworkDiskCache.updateMetaData (self, QNetworkCacheMetaData?metaData) ``` 從重新實現[QAbstractNetworkCache.updateMetaData](qabstractnetworkcache.html#updateMetaData)( ) 。
                  <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>

                              哎呀哎呀视频在线观看