2020-07-04 08:38
⁄ 工业·编程
⁄ 共 2410字
1.概述
通用唯一识别码(英语:Universally Unique Identifier,简称UUID)是一种软件建构的标准。UUID的目的,是让分散式系统中的所有元素,都能有唯一的辨识信息,而不需要通过中央控制端来做辨识信息的指定。一组UUID,是由一串16位组(亦称128位)的16进位数字所构成,是故UUID理论上的总数为 2 16 x 8 =2 128,约等于 3.4 x 10 38。UUID的标准型式包含32个16进位数字,以连字号分为五段,形式为8-4-4-4-12的36个字...
POCO, uuid阅读全文
2019-09-08 20:54
⁄ 工业·编程
⁄ 共 601字
POCO的优点:
1) 比boost更好的线程库,特别是一个活动的方法的实现,并且还可设置线程的优先级。
2) 比 boost:asio更全面的网络库。但是boost:asio也是一个非常好的网络库。
3) 包含了一些Boost所不包含的功能,像XML,数据库接口等。
4) 跟Boost相比,集成度更高,是更加统一的一个库。
5) Poco的c++代码更清洁,现代和易理解。对不是模板编程专家的人来说,POCO的代码比大多数Boost库容易理解得多
6) 可以在许多...
boost库, POCO阅读全文
2019-09-06 18:22
⁄ 工业·编程
⁄ 共 1470字
Poco C++库是:
一系列C++类库,类似Java类库,.Net框架,Apple的Cocoa;
侧重于互联网时代的网络应用程序
使用高效的,现代的标准ANSI/ISO C++,并基于STL
高可移值性,并可在多个平台下可用
开源,并使用Boost Software License发布
不管是否商用,都完全免费
特性:
DynamicAny与Any类
Cache框架
基于OpenSSL的密码系统
日期,时间类库
事件和通知框架
FTP客户端
跨平台的文件系统类库
HT...
POCO阅读全文
2019-08-03 07:44
⁄ 工业·编程
⁄ 共 11523字
2. Poco日志的实现
2.1 日志模块应该实现的业务
在讨论日志的实现之前,先来聊一下日志模块应该实现那些业务。日志的业务说简单可以很简单,就是输出记录。说复杂也复杂,来看它的复杂性:
首先,日志的输出对象是不同的,有控制台输出,本地文件输出,网络文件输出,输出到系统日志等。假如是网络日志,日志库中其实还会包含网络模块,真是越来越复杂了。
第二,日志输出的格式和内容。不同用户关心的内容和喜欢的输出格式是不...
POCO, 开源, 源码阅读全文
2019-08-01 07:41
⁄ 工业·编程
⁄ 共 11958字
日志对于程序来说是非常重要的,特别是对一些大型程序而言。一旦程序被发布,在现场日志几乎是程序员唯一可以获取程序信息的手段。Poco作为一个框架类库,提供了非常多的日志种类供程序员选用。文章将分两个部分,对于Poco日志进行介绍。第一部分主要以翻译Poco文档为主,第二部分则探讨Poco日志的实现。
1. Poco库日志接口
1.1 总体介绍
Poco中的日志模块主要涉及下列...
POCO, 开源, 源码阅读全文
2019-07-31 07:00
⁄ 工业·编程
⁄ 共 25896字
本节主要介绍Thread类和ThreadLocal机制的使用方法以及实现原理,以及对ThreadPool线程池支持的简单了解
Thread类使用方法
在C++语言中,我们通过_beginThreadex或CreateThread来创建线程(最好使用前者,关于两者区别和线程基础知识可参见《Windows核心编程》),并且提供一个原型为void MyFunc(void pParam)入口函数来完成任务。在Poco中,将入口函数抽象为一个类Runnable,该类提供void run()接口,用户需要继承至该类来实现自...
POCO, 开源, 源码阅读全文
2019-07-30 16:10
⁄ 工业·编程
⁄ 共 17764字
POCO C++是一个开源的C++类库的集合,它主要提供简单的、快速的网络和可移植应用程序的C++开发,这个类库和C++标准库可以很好的集成并填补C++标准库的功能空缺。POCO库的模块化、高效的设计及实现使得POCO特别适合嵌入式开发
模块说明
POCO由4个核心库及若干个附加库组成。核心库是:Foundation、XML、Util和Net。其中的两个附加库是:NetSSL,为Net 库中的网络类提供SSL 支持;Data,用来以统一的形式访问不同的SQL 数据库。PO...
POCO, 源码阅读全文
2019-07-30 06:50
⁄ 工业·编程
⁄ 共 14626字
Foundation中的SharedLibrary实现跨平台的dll动态加载。具体使用方法和简介可见:ShareLibrary官方文档
SharedLibrary导出函数
SharedLibrary类的简单用法
通过SharedLibrary可以实现函数导出和类导出,函数导出是最简单的,Dll提供方除了函数需要使用extern "C"声明之外,和普通C++编写的dll并无区别,在官方文档的例子中,dll使用方代码也很简单:
// LibraryLoaderTest.cpp
#include "Poco/SharedLibrary.h&q...
POCO, 开源, 源码阅读全文