Boost ptree 解析 (spirit 库)多线程 崩溃
2013-11-13 09:49
197 查看
一直喜欢用boost,但是 ptree 解析在多线程下确实很容易崩溃。其实只需要添加一个宏,一直记不住,现在收藏一下。
原因:ptree解析使用的是语法解析器spirit库,默认非线程安全。
如果在多线程下使用,如下即可:(在#include 之前定义语法解析库线程安全宏)
#define BOOST_SPIRIT_THREADSAFE
#include <boost/spirit.hpp>
ptree同理:
#define BOOST_SPIRIT_THREADSAFE
#include <boost/property_tree/ptree.hpp>
#include <boost/property_tree/json_parser.hpp>
原因:ptree解析使用的是语法解析器spirit库,默认非线程安全。
如果在多线程下使用,如下即可:(在#include 之前定义语法解析库线程安全宏)
#define BOOST_SPIRIT_THREADSAFE
#include <boost/spirit.hpp>
ptree同理:
#define BOOST_SPIRIT_THREADSAFE
#include <boost/property_tree/ptree.hpp>
#include <boost/property_tree/json_parser.hpp>
相关文章推荐
- Boost ptree 解析json字符串 多线程下程序crash
- Boost ptree 解析json字符串 多线程下程序crash
- Boost ptree 解析json字符串 多线程下程序crash
- 2-5-Java多线程-创建线程的Runnable接口方法及Thread源码解析
- Android例子—Android文件下载--多线程断点下载的代码流程解析
- 多线程状态解析
- 多线程细节解析
- 最全面的Java多线程用法解析
- 解析Java中的多线程机制
- Linux操作系统下的多线程编程详细解析
- Java多线程程序设计详细解析
- 解析Java多线程的两点误区你必知的
- java多线程常见问题和解析
- 多线程的同步 critical section 类的用法与解析
- Linux操作系统下的多线程编程详细解析
- iOS——多线程编程详细解析
- Android 多线程下载文件原理霸气解析介绍 (完结版)-----greendao数据库的存储,断点下载
- 发布一个基于Spirit的表达式解析库
- 多线程与json解析
- 过堆栈调用解析多线程