Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(58)

Side by Side Diff: net/disk_cache/disk_cache.h

Issue 2661333002: Track SimpleCache memory usage in net/ MemoryDumpProvider (Closed)
Patch Set: Address ssid comments Created 3 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « no previous file | net/disk_cache/simple/simple_backend_impl.h » ('j') | net/http/http_cache.cc » ('J')
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 // Defines the public interface of the disk cache. For more details see 5 // Defines the public interface of the disk cache. For more details see
6 // http://dev.chromium.org/developers/design-documents/network-stack/disk-cache 6 // http://dev.chromium.org/developers/design-documents/network-stack/disk-cache
7 7
8 #ifndef NET_DISK_CACHE_DISK_CACHE_H_ 8 #ifndef NET_DISK_CACHE_DISK_CACHE_H_
9 #define NET_DISK_CACHE_DISK_CACHE_H_ 9 #define NET_DISK_CACHE_DISK_CACHE_H_
10 10
11 #include <stdint.h> 11 #include <stdint.h>
12 12
13 #include <memory> 13 #include <memory>
14 #include <string> 14 #include <string>
15 #include <vector> 15 #include <vector>
16 16
17 #include "base/memory/ref_counted.h" 17 #include "base/memory/ref_counted.h"
18 #include "base/strings/string_split.h" 18 #include "base/strings/string_split.h"
19 #include "base/time/time.h" 19 #include "base/time/time.h"
20 #include "net/base/cache_type.h" 20 #include "net/base/cache_type.h"
21 #include "net/base/completion_callback.h" 21 #include "net/base/completion_callback.h"
22 #include "net/base/net_errors.h" 22 #include "net/base/net_errors.h"
23 #include "net/base/net_export.h" 23 #include "net/base/net_export.h"
24 24
25 namespace base { 25 namespace base {
26 class FilePath; 26 class FilePath;
27 class SingleThreadTaskRunner; 27 class SingleThreadTaskRunner;
28 namespace trace_event {
29 class ProcessMemoryDump;
30 }
28 } 31 }
29 32
30 namespace net { 33 namespace net {
31 class IOBuffer; 34 class IOBuffer;
32 class NetLog; 35 class NetLog;
33 } 36 }
34 37
35 namespace disk_cache { 38 namespace disk_cache {
36 39
37 class Entry; 40 class Entry;
(...skipping 129 matching lines...) Expand 10 before | Expand all | Expand 10 after
167 // Returns an iterator which will enumerate all entries of the cache in an 170 // Returns an iterator which will enumerate all entries of the cache in an
168 // undefined order. 171 // undefined order.
169 virtual std::unique_ptr<Iterator> CreateIterator() = 0; 172 virtual std::unique_ptr<Iterator> CreateIterator() = 0;
170 173
171 // Return a list of cache statistics. 174 // Return a list of cache statistics.
172 virtual void GetStats(base::StringPairs* stats) = 0; 175 virtual void GetStats(base::StringPairs* stats) = 0;
173 176
174 // Called whenever an external cache in the system reuses the resource 177 // Called whenever an external cache in the system reuses the resource
175 // referred to by |key|. 178 // referred to by |key|.
176 virtual void OnExternalCacheHit(const std::string& key) = 0; 179 virtual void OnExternalCacheHit(const std::string& key) = 0;
180
181 // Dumps memory allocation stats. |parent_dump_absolute_name| is the name
182 // used by the parent MemoryAllocatorDump in the memory dump hierarchy.
183 // TODO(xunjieli): Investigate memory usage from backends other than
184 // SimpleCache.
ssid 2017/02/01 02:45:48 Slightly weird place to have this TODO about imple
xunjieli 2017/02/01 14:55:18 Done.
185 virtual void DumpMemoryStats(base::trace_event::ProcessMemoryDump* pmd,
186 const std::string& parent_absolute_name) const {}
177 }; 187 };
178 188
179 // This interface represents an entry in the disk cache. 189 // This interface represents an entry in the disk cache.
180 class NET_EXPORT Entry { 190 class NET_EXPORT Entry {
181 public: 191 public:
182 typedef net::CompletionCallback CompletionCallback; 192 typedef net::CompletionCallback CompletionCallback;
183 typedef net::IOBuffer IOBuffer; 193 typedef net::IOBuffer IOBuffer;
184 194
185 // Marks this cache entry for deletion. 195 // Marks this cache entry for deletion.
186 virtual void Doom() = 0; 196 virtual void Doom() = 0;
(...skipping 156 matching lines...) Expand 10 before | Expand all | Expand 10 after
343 entry->Close(); 353 entry->Close();
344 } 354 }
345 }; 355 };
346 356
347 // Automatically closes an entry when it goes out of scope. 357 // Automatically closes an entry when it goes out of scope.
348 typedef std::unique_ptr<Entry, EntryDeleter> ScopedEntryPtr; 358 typedef std::unique_ptr<Entry, EntryDeleter> ScopedEntryPtr;
349 359
350 } // namespace disk_cache 360 } // namespace disk_cache
351 361
352 #endif // NET_DISK_CACHE_DISK_CACHE_H_ 362 #endif // NET_DISK_CACHE_DISK_CACHE_H_
OLDNEW
« no previous file with comments | « no previous file | net/disk_cache/simple/simple_backend_impl.h » ('j') | net/http/http_cache.cc » ('J')

Powered by Google App Engine
This is Rietveld 408576698