C++日志组件spdlog
spdlog是基于C++ 11的日志组件,它非常轻量,使用时你仅仅需要引入头文件就可以了。
名字空间 spdlog::之下的大多数函数都是线程安全的,除了:
|
1 2 3 |
void spdlog::set_pattern(const std::string&); void spdlog::set_formatter(formatter_ptr); void spdlog::set_error_handler(log_err_handler); |
日志器对象的大部分方法也是线程安全的,除了:
所有以_mt结尾的SINK都是线程安全的,以_st结尾的则不是。
spdlog默认的输出格式为:
要定制输出格式,可以调用:
或者实现自己的格式化器:
输出格式的Pattern中可…
阅读全文Spring Boot学习笔记
Spring Boot是Spring的一个子项目,它让创建独立运行(通过java -jar)的、产品级别的Spring应用变得简单:
- 支持创建独立运行于JVM中的Spring程序
- 内嵌Tomcat、Jetty或者Undertow,不需要部署War包
- 简化Ma…
SockJS知识集锦
SockJS允许应用程序使用WebSocket来进行通信,但是当WebSocket不可用时,可以使用代替的传输机制,但是保持API不变。
SockJS由以下部分组成:
- SockJS协议
- 一个JavaScript客户端
- SockJS服务器端实现,例如 sprin…
Spring对WebSocket的支持
Spring 4.x引入了新的模块spring-websocket,对WebSocket提供了全面的支持,Spring的WebSocket实现遵循JSR-356(Java WebSocket API),并且添加了一些额外特性。
绝大部分现代浏览器均支持WebSocket,包括…
阅读全文基于Kurento搭建WebRTC服务器
Kurento是一个WebRTC媒体服务器,同时提供了一系列的客户端API,可以简化供浏览器、移动平台使用的视频类应用程序的开发。Kurento支持:
- 群组通信(group communications)
- 媒体流的转码(transcoding)、录制(re…
使用Jansson处理JSON
Jansson是一个用于解码、编码、操控JSON的C库。其特性为:
- 简单直观的API和数据模型
- 没有依赖项
- 完整的Unicode支持(UTF-8)
Jansson使用cmake作为构建工具。可以执行下面的命令构建:
|
1 2 3 4 5 |
git clone https://github.com/akheron/jansson cd jansson mkdir build && cd build cmake -DCMAKE_INSTALL_PREFIX:STRING=/home/alex/CPP/lib/jansson/2.9 -DJANSSON_BUILD_DOCS=OFF .. cmake --build . -- install |
上述命令执行后,Jansson的头文件和静态库被安装到/home/alex/CPP/lib/jansson/2.9目录
HTML5视频监控技术预研
安防类项目中通常都有视频监控方面的需求。视频监控客户端主要是Native应用的形式,在Web端需要利用NPAPI、ActiveX之类的插件技术实现。
但是,IE式微,Chrome也放弃了NPAPI,另一方面,监控设备硬件厂商的视频输出格式则逐渐标准化。这…
阅读全文