diff options
author | orivej <orivej@yandex-team.ru> | 2022-02-10 16:45:01 +0300 |
---|---|---|
committer | Daniil Cherednik <dcherednik@yandex-team.ru> | 2022-02-10 16:45:01 +0300 |
commit | 2d37894b1b037cf24231090eda8589bbb44fb6fc (patch) | |
tree | be835aa92c6248212e705f25388ebafcf84bc7a1 /contrib/libs/poco/Foundation/include/Poco/AccessExpireCache.h | |
parent | 718c552901d703c502ccbefdfc3c9028d608b947 (diff) | |
download | ydb-2d37894b1b037cf24231090eda8589bbb44fb6fc.tar.gz |
Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2.
Diffstat (limited to 'contrib/libs/poco/Foundation/include/Poco/AccessExpireCache.h')
-rw-r--r-- | contrib/libs/poco/Foundation/include/Poco/AccessExpireCache.h | 126 |
1 files changed, 63 insertions, 63 deletions
diff --git a/contrib/libs/poco/Foundation/include/Poco/AccessExpireCache.h b/contrib/libs/poco/Foundation/include/Poco/AccessExpireCache.h index 2e0d3dea09..bb5c571526 100644 --- a/contrib/libs/poco/Foundation/include/Poco/AccessExpireCache.h +++ b/contrib/libs/poco/Foundation/include/Poco/AccessExpireCache.h @@ -1,63 +1,63 @@ -// -// AccessExpireCache.h -// -// Library: Foundation -// Package: Cache -// Module: AccessExpireCache -// -// Definition of the AccessExpireCache class. -// -// Copyright (c) 2006, Applied Informatics Software Engineering GmbH. -// and Contributors. -// -// SPDX-License-Identifier: BSL-1.0 -// - - -#ifndef Foundation_AccessExpireCache_INCLUDED -#define Foundation_AccessExpireCache_INCLUDED - - -#include "Poco/AbstractCache.h" -#include "Poco/AccessExpireStrategy.h" - - -namespace Poco { - - -template < - class TKey, - class TValue, - class TMutex = FastMutex, - class TEventMutex = FastMutex -> -class AccessExpireCache: public AbstractCache<TKey, TValue, AccessExpireStrategy<TKey, TValue>, TMutex, TEventMutex> - /// An AccessExpireCache caches entries for a fixed time period (per default 10 minutes). - /// Entries expire when they are not accessed with get() during this time period. Each access resets - /// the start time for expiration. - /// Be careful when using an AccessExpireCache. A cache is often used - /// like cache.has(x) followed by cache.get x). Note that it could happen - /// that the "has" call works, then the current execution thread gets descheduled, time passes, - /// the entry gets invalid, thus leading to an empty SharedPtr being returned - /// when "get" is invoked. -{ -public: - AccessExpireCache(Timestamp::TimeDiff expire = 600000): - AbstractCache<TKey, TValue, AccessExpireStrategy<TKey, TValue>, TMutex, TEventMutex>(AccessExpireStrategy<TKey, TValue>(expire)) - { - } - - ~AccessExpireCache() - { - } - -private: - AccessExpireCache(const AccessExpireCache& aCache); - AccessExpireCache& operator = (const AccessExpireCache& aCache); -}; - - -} // namespace Poco - - -#endif // Foundation_AccessExpireCache_INCLUDED +// +// AccessExpireCache.h +// +// Library: Foundation +// Package: Cache +// Module: AccessExpireCache +// +// Definition of the AccessExpireCache class. +// +// Copyright (c) 2006, Applied Informatics Software Engineering GmbH. +// and Contributors. +// +// SPDX-License-Identifier: BSL-1.0 +// + + +#ifndef Foundation_AccessExpireCache_INCLUDED +#define Foundation_AccessExpireCache_INCLUDED + + +#include "Poco/AbstractCache.h" +#include "Poco/AccessExpireStrategy.h" + + +namespace Poco { + + +template < + class TKey, + class TValue, + class TMutex = FastMutex, + class TEventMutex = FastMutex +> +class AccessExpireCache: public AbstractCache<TKey, TValue, AccessExpireStrategy<TKey, TValue>, TMutex, TEventMutex> + /// An AccessExpireCache caches entries for a fixed time period (per default 10 minutes). + /// Entries expire when they are not accessed with get() during this time period. Each access resets + /// the start time for expiration. + /// Be careful when using an AccessExpireCache. A cache is often used + /// like cache.has(x) followed by cache.get x). Note that it could happen + /// that the "has" call works, then the current execution thread gets descheduled, time passes, + /// the entry gets invalid, thus leading to an empty SharedPtr being returned + /// when "get" is invoked. +{ +public: + AccessExpireCache(Timestamp::TimeDiff expire = 600000): + AbstractCache<TKey, TValue, AccessExpireStrategy<TKey, TValue>, TMutex, TEventMutex>(AccessExpireStrategy<TKey, TValue>(expire)) + { + } + + ~AccessExpireCache() + { + } + +private: + AccessExpireCache(const AccessExpireCache& aCache); + AccessExpireCache& operator = (const AccessExpireCache& aCache); +}; + + +} // namespace Poco + + +#endif // Foundation_AccessExpireCache_INCLUDED |