在前面几节中我们提到属性和属性值好几次。在这节我们会学习如何使用属性,以添加更多的数据到日志记录。 每条日志记录可以附加多个已命名的属性值,属性可以代表日志记录产生时任何与程序运行相关的数据信息。如代码位置、执行模块名称、当前数据和时间以及程序运行相关的任何数据信息。属性可以表现为一个值生成器,在这...
分类:
其他好文 时间:
2015-05-07 12:22:22
阅读次数:
606
打印输出 对于那些不想阅读手册,只需要一个简单的工具用于日志记录的人。你可以直接在控制台中输出日志信息,首先你需要包含头文件boost/log/trivial.hpp,然后编写下面的代码: #include #include int main(int, char*[]){ BOOST_LOG_TRI...
分类:
其他好文 时间:
2015-05-07 12:20:33
阅读次数:
1492
设置接收器 BOOST_LOG_TRIVIAL不能提供足够的灵活性。例如,有时可能需要更复杂的逻辑来处理日志,而不是简单地将其打印在控制台上。为了定制这一点,你必须构造记录接收器,并在boost.log库core里面注册。这通常只需要你在应用程序启动的地方注册一次就够了。【注意】在前面的章节中我们没...
分类:
其他好文 时间:
2015-05-07 12:20:30
阅读次数:
461
boost线程库的基本用法这篇文章有介绍到http://www.cppblog.com/fwxjj/archive/2006/12/04/15975.html我这里只讨论boost::condition在reader/writer模式中的一些注意点首先我们看只有一个reader/一个writer的情...
分类:
其他好文 时间:
2015-05-07 12:19:37
阅读次数:
151
再谈过滤 我们已经在前面的章节接触过滤,但只是浅尝辄止。我们现在能够添加日志记录并设置接收器的属性,我们需要建立复杂的过滤功能。让我们看下这个例子:#include #include #include #include #include #include #include #include #inc...
分类:
其他好文 时间:
2015-05-07 11:55:29
阅读次数:
1323
记录器对象在上个章节的接收器部分我们已经知道了boost.log库是如何存储日志的,现在是时候去尝试记录日志了。首先我们要创建一个记录器,这非常简单:boost::log::sources::logger lg;【注意】boost.log库在后台给记录器(logger)提供了写的功能,就如同BOOS...
分类:
其他好文 时间:
2015-05-07 11:55:04
阅读次数:
674
class implementation{public:~implementation() { std::cout sp1(new implementation());std::cout sp2 = sp1;std::cout<<"The Sample now has "<<sp2.use_cou....
分类:
其他好文 时间:
2015-05-06 17:11:18
阅读次数:
125
boost的mutex,condition_variable非常好用。但是在Linux上,boost实际上做的是对pthread_mutex_t 和pthread_cond_t的一系列的封装。因此通过对原生态的POSIX 的mutex,cond的生成者,消费者的实现,我们可以再次体会boost带给....
分类:
其他好文 时间:
2015-05-06 14:41:17
阅读次数:
273
1:简单了解boost定时器#include "stdafx.h"#include #include #include #include using namespace boost::asio;using namespace boost;int exit1 = 1;void printing(int...
分类:
编程语言 时间:
2015-05-05 16:07:49
阅读次数:
1087
??
Boost库的function是一组函数对象包装类的模板,实现了一个泛型的回调机制。Boost库的function与函数指针相比,优点在于它允许用户在目标的实现上拥有更大的弹性,即目标既可以是普通函数(自由函数),也可以是函数对象和类成员函数,而且可以给函数添加状态。
使用Boost库的function,可以很好地与现有的代码融合在一起。另外,function还可以与Boost库的bin...
分类:
其他好文 时间:
2015-05-05 12:39:15
阅读次数:
116