草庐IT

boost-pool

全部标签

c++ - 使用 Boost Asio 的快速数据(图像)传输服务器客户端

我是网络编程的新手,对使用BoostAsio在客户端和服务器之间连续快速传输数据(图像)的最佳实践有一些疑问。重要的一点,我们不能应用会降低图像质量的压缩。我们使用专用网络(54MBit),除我们之外没有其他流量。我们被推荐使用BoostAsio,因为它似乎适合我们的需要。然而,由于Boost非常强大,它对像我这样没有经验的(Boost)开发人员来说是一个挑战。我们想开发一种尽可能简单的工具,它可以在客户端和服务器之间尽可能快地连续发送图像数据。基本上它是流媒体。我们更愿意使用TCP,但如果我们可以使用UDP获得显着的性能提升,我们不会介意偶尔丢失数据包。数据是一个无符号字符缓冲区(6

c++ - 我如何从 boost::errinfo_nested_exception 中提取任何信息?

我最近开始使用boost::exception。现在我想使用boost::errinfo_nested_exception打印有关错误原因的信息。问题是我无法弄清楚如何从原因中获取信息。我尝试了以下但没有成功:#include#includestructmyex:publicvirtualboost::exception{};intmain(){myexcause;cause(e);//Icantdothis://conststd::string*file=boost::get_error_info(*c);//Northis://conststd::string*file=boost

c++ - 将 boost::function 传递给模板; boost::function 是什么类

我需要将距离函数传递给模板。因此我使用boost::function和boost::bind。但我不明白我必须为类距离传递什么:templateclassCoverTree{Distancedistance;...public:CoverTree(constDistance&distance):max_level(default_max_level),min_level(default_max_level),distance(distance){}...}模板作者的示例如下所示:floateuclidian(conststd::vector&p1,conststd::vector&p2

c++ - 在 boost python 中使用自定义智能指针

我想使用Boost::Python在python中公开包裹在自定义智能指针中的对象注意事项自定义智能指针的现有使用太普遍了经济地升级到boost智能指针我想使用在多个位置描述的自动取消引用技术问题是我似乎不太正确。这是示例代码:LegacyCode::Ptr->遗留智能指针代码LegacyCode::Session->包裹在遗留智能指针中的遗留对象namespaceboost{namespacepython{templateT*get_pointer(LegacyCode::Ptrconst&p){returnp.get();}templatestructpointee>{typede

c++ - 用 boost::gil 画线?

很难说出这里要问什么。这个问题模棱两可、含糊不清、不完整、过于宽泛或夸夸其谈,无法以目前的形式得到合理的回答。如需帮助澄清此问题以便重新打开,visitthehelpcenter.关闭9年前。我需要在(屏幕外)图像上画一些线。我想使用boost::gil,因为该库已集成到我的项目中。我想在二维数组中从起点到终点画一条线谁能给我一个如何使用gil画线的简单示例?谢谢。

c++ - 对 Boost 线程的 undefined reference

我正在尝试编译和使用Boost1.54库,但遇到了死胡同。我编译并安装了文档中提到的库:./bootstrap.sh./b2install我什至尝试使用以下方法完全重新安装:./bootstrap.sh./b2threading=multiinstall我已经使用-lboost_thread和-L*path链接到boost*/bin.v2/libs我仍然收到以下链接器错误:undefinedreferencetoboost::thread::start_thread_noexcept()undefinedreferencetoboost::thread::join_noexcept()

c++ - 从 json 文件构建 boost 属性树性能很差?

我正在使用boost属性树来加载/转储json文件。但是,性能很差。比如我有一个json文件,大小是1.8M。boostC++程序花费3秒加载json文件并构建属性树。如果我用python加载json文件,只需要0.1秒。python也将把所有东西构造为对象。C++程序是这样的:intmain(intargc,char**argv){std::fstreamfin;fin.open(argv[1],std::fstream::in);if(!fin.is_open()){ASSERT(false);}boost::property_tree::ptreept;try{read_json

c++ - 为什么 boost lockfree freelist 大小被限制为最多 65535 个对象?

为什么boostlockfree大小固定为65535个对象?typedefboost::lockfree::queue>MyQueue;MyQueuequeue(1024*100);上面的代码抛出异常。我在代码中找到的原因是基于数组的空闲列表仅支持16位地址空间。这是什么原因?我在64位Linux机器上使用它。那为什么要限制寻址到2**16项呢?队列是否使用“shortint”进行索引?原子指令是否只适用于16位字长?我应该怎么做才能拥有比这更大容量的固定大小队列? 最佳答案 无锁链表的Boost实现必须打ABAproblem.一个

c++ - boost 库中的 Nelder-Mead 算法

我想知道Nelder-Mead算法是否在c++boost库中实现,例如toms748_solve。我在文档中找不到它,在我自己实现代码之前我会问你。非常感谢。 最佳答案 我发现变形虫(Nelder-Meadedownhillsimplex)算法是由vnl库(http://public.kitware.com/vxl/doc/release/core/vnl/html/classvnl__amoeba.html#details)实现的,所以我打算使用这个库而不是boost。我知道我一直在使用boost::math库寻找这个算法的实现,

c++ - boost::filesystem、std::getenv 和并发

假设我有以下代码:#include#includevoidfoo(){constboost::filesystem::wpath&appdata_folder=std::getenv("APPDATA");while(true){boost::this_thread::sleep_for(boost::chrono::milliseconds(500));}}intmain(){boost::threadfirst(foo);boost::threadsecond(foo);first.join();second.join();}它在运行时失败并出现以下错误:*InternalProg