mirror of
https://github.com/VCMP-SqMod/SqMod.git
synced 2025-01-31 09:57:14 +01:00
4a6bfc086c
Switched to POCO library for unified platform/library interface. Deprecated the external module API. It was creating more problems than solving. Removed most built-in libraries in favor of system libraries for easier maintenance. Cleaned and secured code with help from static analyzers.
59 lines
841 B
C++
59 lines
841 B
C++
//
|
|
// AtomicCounter.cpp
|
|
//
|
|
// Library: Foundation
|
|
// Package: Core
|
|
// Module: AtomicCounter
|
|
//
|
|
// Copyright (c) 2009, Applied Informatics Software Engineering GmbH.
|
|
// and Contributors.
|
|
//
|
|
// SPDX-License-Identifier: BSL-1.0
|
|
//
|
|
|
|
|
|
#include "Poco/AtomicCounter.h"
|
|
|
|
|
|
namespace Poco {
|
|
|
|
|
|
AtomicCounter::AtomicCounter():
|
|
_counter(0)
|
|
{
|
|
}
|
|
|
|
|
|
AtomicCounter::AtomicCounter(AtomicCounter::ValueType initialValue):
|
|
_counter(initialValue)
|
|
{
|
|
}
|
|
|
|
|
|
AtomicCounter::AtomicCounter(const AtomicCounter& counter):
|
|
_counter(counter.value())
|
|
{
|
|
}
|
|
|
|
|
|
AtomicCounter::~AtomicCounter()
|
|
{
|
|
}
|
|
|
|
|
|
AtomicCounter& AtomicCounter::operator = (const AtomicCounter& counter)
|
|
{
|
|
_counter.store(counter._counter.load());
|
|
return *this;
|
|
}
|
|
|
|
|
|
AtomicCounter& AtomicCounter::operator = (AtomicCounter::ValueType value)
|
|
{
|
|
_counter.store(value);
|
|
return *this;
|
|
}
|
|
|
|
|
|
} // namespace Poco
|