aboutsummaryrefslogtreecommitdiffstats
path: root/contrib/libs/poco/Foundation/include/Poco/AsyncChannel.h
diff options
context:
space:
mode:
authororivej <orivej@yandex-team.ru>2022-02-10 16:44:49 +0300
committerDaniil Cherednik <dcherednik@yandex-team.ru>2022-02-10 16:44:49 +0300
commit718c552901d703c502ccbefdfc3c9028d608b947 (patch)
tree46534a98bbefcd7b1f3faa5b52c138ab27db75b7 /contrib/libs/poco/Foundation/include/Poco/AsyncChannel.h
parente9656aae26e0358d5378e5b63dcac5c8dbe0e4d0 (diff)
downloadydb-718c552901d703c502ccbefdfc3c9028d608b947.tar.gz
Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 1 of 2.
Diffstat (limited to 'contrib/libs/poco/Foundation/include/Poco/AsyncChannel.h')
-rw-r--r--contrib/libs/poco/Foundation/include/Poco/AsyncChannel.h200
1 files changed, 100 insertions, 100 deletions
diff --git a/contrib/libs/poco/Foundation/include/Poco/AsyncChannel.h b/contrib/libs/poco/Foundation/include/Poco/AsyncChannel.h
index 9756edc3eb..0a91eaf76a 100644
--- a/contrib/libs/poco/Foundation/include/Poco/AsyncChannel.h
+++ b/contrib/libs/poco/Foundation/include/Poco/AsyncChannel.h
@@ -1,100 +1,100 @@
-//
-// AsyncChannel.h
-//
-// Library: Foundation
-// Package: Logging
-// Module: AsyncChannel
-//
-// Definition of the AsyncChannel class.
-//
-// Copyright (c) 2004-2007, Applied Informatics Software Engineering GmbH.
-// and Contributors.
-//
-// SPDX-License-Identifier: BSL-1.0
-//
-
-
-#ifndef Foundation_AsyncChannel_INCLUDED
-#define Foundation_AsyncChannel_INCLUDED
-
-
-#include "Poco/Foundation.h"
-#include "Poco/Channel.h"
-#include "Poco/Thread.h"
-#include "Poco/Mutex.h"
-#include "Poco/Runnable.h"
-#include "Poco/NotificationQueue.h"
-
-
-namespace Poco {
-
-
-class Foundation_API AsyncChannel: public Channel, public Runnable
- /// A channel uses a separate thread for logging.
- ///
- /// Using this channel can help to improve the performance of
- /// applications that produce huge amounts of log messages or
- /// that write log messages to multiple channels simultaneously.
- ///
- /// All log messages are put into a queue and this queue is
- /// then processed by a separate thread.
-{
-public:
- AsyncChannel(Channel* pChannel = 0, Thread::Priority prio = Thread::PRIO_NORMAL);
- /// Creates the AsyncChannel and connects it to
- /// the given channel.
-
- void setChannel(Channel* pChannel);
- /// Connects the AsyncChannel to the given target channel.
- /// All messages will be forwarded to this channel.
-
- Channel* getChannel() const;
- /// Returns the target channel.
-
- void open();
- /// Opens the channel and creates the
- /// background logging thread.
-
- void close();
- /// Closes the channel and stops the background
- /// logging thread.
-
- void log(const Message& msg);
- /// Queues the message for processing by the
- /// background thread.
-
- void setProperty(const std::string& name, const std::string& value);
- /// Sets or changes a configuration property.
- ///
- /// The "channel" property allows setting the target
- /// channel via the LoggingRegistry.
- /// The "channel" property is set-only.
- ///
- /// The "priority" property allows setting the thread
- /// priority. The following values are supported:
- /// * lowest
- /// * low
- /// * normal (default)
- /// * high
- /// * highest
- ///
- /// The "priority" property is set-only.
-
-protected:
- ~AsyncChannel();
- void run();
- void setPriority(const std::string& value);
-
-private:
- Channel* _pChannel;
- Thread _thread;
- FastMutex _threadMutex;
- FastMutex _channelMutex;
- NotificationQueue _queue;
-};
-
-
-} // namespace Poco
-
-
-#endif // Foundation_AsyncChannel_INCLUDED
+//
+// AsyncChannel.h
+//
+// Library: Foundation
+// Package: Logging
+// Module: AsyncChannel
+//
+// Definition of the AsyncChannel class.
+//
+// Copyright (c) 2004-2007, Applied Informatics Software Engineering GmbH.
+// and Contributors.
+//
+// SPDX-License-Identifier: BSL-1.0
+//
+
+
+#ifndef Foundation_AsyncChannel_INCLUDED
+#define Foundation_AsyncChannel_INCLUDED
+
+
+#include "Poco/Foundation.h"
+#include "Poco/Channel.h"
+#include "Poco/Thread.h"
+#include "Poco/Mutex.h"
+#include "Poco/Runnable.h"
+#include "Poco/NotificationQueue.h"
+
+
+namespace Poco {
+
+
+class Foundation_API AsyncChannel: public Channel, public Runnable
+ /// A channel uses a separate thread for logging.
+ ///
+ /// Using this channel can help to improve the performance of
+ /// applications that produce huge amounts of log messages or
+ /// that write log messages to multiple channels simultaneously.
+ ///
+ /// All log messages are put into a queue and this queue is
+ /// then processed by a separate thread.
+{
+public:
+ AsyncChannel(Channel* pChannel = 0, Thread::Priority prio = Thread::PRIO_NORMAL);
+ /// Creates the AsyncChannel and connects it to
+ /// the given channel.
+
+ void setChannel(Channel* pChannel);
+ /// Connects the AsyncChannel to the given target channel.
+ /// All messages will be forwarded to this channel.
+
+ Channel* getChannel() const;
+ /// Returns the target channel.
+
+ void open();
+ /// Opens the channel and creates the
+ /// background logging thread.
+
+ void close();
+ /// Closes the channel and stops the background
+ /// logging thread.
+
+ void log(const Message& msg);
+ /// Queues the message for processing by the
+ /// background thread.
+
+ void setProperty(const std::string& name, const std::string& value);
+ /// Sets or changes a configuration property.
+ ///
+ /// The "channel" property allows setting the target
+ /// channel via the LoggingRegistry.
+ /// The "channel" property is set-only.
+ ///
+ /// The "priority" property allows setting the thread
+ /// priority. The following values are supported:
+ /// * lowest
+ /// * low
+ /// * normal (default)
+ /// * high
+ /// * highest
+ ///
+ /// The "priority" property is set-only.
+
+protected:
+ ~AsyncChannel();
+ void run();
+ void setPriority(const std::string& value);
+
+private:
+ Channel* _pChannel;
+ Thread _thread;
+ FastMutex _threadMutex;
+ FastMutex _channelMutex;
+ NotificationQueue _queue;
+};
+
+
+} // namespace Poco
+
+
+#endif // Foundation_AsyncChannel_INCLUDED