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

Side by Side Diff: net/base/cookie_monster.h

Issue 6780035: Use lock-free lazy initialization for static histogram references (Closed) Base URL: svn://chrome-svn/chrome/trunk/src/
Patch Set: '' Created 9 years, 8 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 | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2011 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 // Brought to you by the letter D and the number 2. 5 // Brought to you by the letter D and the number 2.
6 6
7 #ifndef NET_BASE_COOKIE_MONSTER_H_ 7 #ifndef NET_BASE_COOKIE_MONSTER_H_
8 #define NET_BASE_COOKIE_MONSTER_H_ 8 #define NET_BASE_COOKIE_MONSTER_H_
9 #pragma once 9 #pragma once
10 10
(...skipping 453 matching lines...) Expand 10 before | Expand all | Expand 10 after
464 // Initialize the above variables; should only be called from 464 // Initialize the above variables; should only be called from
465 // the constructor. 465 // the constructor.
466 void InitializeHistograms(); 466 void InitializeHistograms();
467 467
468 // The resolution of our time isn't enough, so we do something 468 // The resolution of our time isn't enough, so we do something
469 // ugly and increment when we've seen the same time twice. 469 // ugly and increment when we've seen the same time twice.
470 base::Time CurrentTime(); 470 base::Time CurrentTime();
471 471
472 // Histogram variables; see CookieMonster::InitializeHistograms() in 472 // Histogram variables; see CookieMonster::InitializeHistograms() in
473 // cookie_monster.cc for details. 473 // cookie_monster.cc for details.
474 scoped_refptr<base::Histogram> histogram_expiration_duration_minutes_; 474 base::Histogram* histogram_expiration_duration_minutes_;
475 scoped_refptr<base::Histogram> histogram_between_access_interval_minutes_; 475 base::Histogram* histogram_between_access_interval_minutes_;
476 scoped_refptr<base::Histogram> histogram_evicted_last_access_minutes_; 476 base::Histogram* histogram_evicted_last_access_minutes_;
477 scoped_refptr<base::Histogram> histogram_count_; 477 base::Histogram* histogram_count_;
478 scoped_refptr<base::Histogram> histogram_domain_count_; 478 base::Histogram* histogram_domain_count_;
479 scoped_refptr<base::Histogram> histogram_etldp1_count_; 479 base::Histogram* histogram_etldp1_count_;
480 scoped_refptr<base::Histogram> histogram_domain_per_etldp1_count_; 480 base::Histogram* histogram_domain_per_etldp1_count_;
481 scoped_refptr<base::Histogram> histogram_number_duplicate_db_cookies_; 481 base::Histogram* histogram_number_duplicate_db_cookies_;
482 scoped_refptr<base::Histogram> histogram_cookie_deletion_cause_; 482 base::Histogram* histogram_cookie_deletion_cause_;
483 scoped_refptr<base::Histogram> histogram_time_get_; 483 base::Histogram* histogram_time_get_;
484 scoped_refptr<base::Histogram> histogram_time_load_; 484 base::Histogram* histogram_time_load_;
485 485
486 CookieMap cookies_; 486 CookieMap cookies_;
487 487
488 // Indicates whether the cookie store has been initialized. This happens 488 // Indicates whether the cookie store has been initialized. This happens
489 // lazily in InitStoreIfNecessary(). 489 // lazily in InitStoreIfNecessary().
490 bool initialized_; 490 bool initialized_;
491 491
492 // Indicates whether this cookie monster uses the new effective domain 492 // Indicates whether this cookie monster uses the new effective domain
493 // key scheme or not. 493 // key scheme or not.
494 ExpiryAndKeyScheme expiry_and_key_scheme_; 494 ExpiryAndKeyScheme expiry_and_key_scheme_;
(...skipping 301 matching lines...) Expand 10 before | Expand all | Expand 10 after
796 private: 796 private:
797 DISALLOW_COPY_AND_ASSIGN(PersistentCookieStore); 797 DISALLOW_COPY_AND_ASSIGN(PersistentCookieStore);
798 }; 798 };
799 799
800 class CookieList : public std::vector<CookieMonster::CanonicalCookie> { 800 class CookieList : public std::vector<CookieMonster::CanonicalCookie> {
801 }; 801 };
802 802
803 } // namespace net 803 } // namespace net
804 804
805 #endif // NET_BASE_COOKIE_MONSTER_H_ 805 #endif // NET_BASE_COOKIE_MONSTER_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698