performance - C++ : Best text accumulator

标签 performance file boost boost-asio streambuf

在发送给客户端之前,文本会逐渐累积。

现在我们使用自己的类为每个 block 分配内存作为 char massive。 (无论如何,就像 char[][] + std::list<char*> 一样)。

然后我们构建整个字符串,将其转换为 std::sting 然后创建 boost::asio::streambuf使用它。这已经够慢了,我想。如果我错了,请纠正我。

我知道,在很多情况下很简单FILEstdio.h 输入用来。它是如何工作的?在每次写入时分配内存。那么,它是否更快,有没有办法读入 boost::asio::streambuf来自 FILE

添加:嗯。我忘记了一件大事 :)。 dll 和主要应用程序的编译是在少数编译器下进行的,所以它里面应该没有 STL 的东西......因为它通常会在执行 dll 时引起很多问题。

最佳答案

我不知道它的效率如何,但我通常使用 ostringstream 来做这类事情

关于performance - C++ : Best text accumulator,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2409718/

相关文章:

c++ - 优化变量值的重复赋值

c++ - 类 A 的 boost ptr_map 作为键和指针 vector 作为值 B 的内存消耗

c++ - boost 私有(private)成员的互斥奇怪错误

c++ - 带有 boost 的 CMake(在 Windows 上):Could not find libraries?

mysql - MySQL 上的游标——好还是坏

php - 加入 2 个 DELETE 查询(如何和性能)

python - 通过在列表的开头而不是尾部添加来扩展 python 列表的最佳解决方案?

arrays - 无法将文件放入 redux 数组

java - 如何打开给定文件的用户系统首选编辑器?

c++ - 在 C/C++ 中搜索大文件中的数据