C++ 我能让RealSense在每次循环时都不重新分配内存吗?

C++ 我能让RealSense在每次循环时都不重新分配内存吗?,c++,3d,camera,depth,realsense,C++,3d,Camera,Depth,Realsense,例如: rs2::frameset data; rs2::align align_to_color(RS2_STREAM_COLOR); for(;;) { data = rs2_pipe.wait_for_frames(); data = align_to_color.process(data); rs2::depth_frame depth = data.get_depth_frame(); rs2::video_frame color = data.ge

例如:

rs2::frameset data;
rs2::align align_to_color(RS2_STREAM_COLOR);

for(;;) {
    data = rs2_pipe.wait_for_frames();
    data = align_to_color.process(data);

    rs2::depth_frame depth = data.get_depth_frame();
    rs2::video_frame color = data.get_color_frame();
    ...
}

可能会在每一帧为
深度
颜色
取消分配和重新分配内存。如何使此相机每次都将帧转储到相同的内存位置进行优化?

如何使此相机每次都将帧转储到相同的内存位置进行优化?--也许编译器的堆管理器已经对此进行了优化。看起来它有时会进入相同的位置,有时不会。我使用“``std::无法确保您测试的是优化的构建,而不是“调试”或未优化的构建。如果没有其他堆分配,C++堆分配器就足够聪明,可以找到相同的空间。实际上,深度一个保持相对稳定,颜色在两个值之间触发器。我相信分配器是智能的。请注意,一个好的分配器只需要做很少的工作就可以找到一个已经释放的空闲块。可能没有对操作系统分配函数进行任何实际调用(可能在循环的第一次迭代中除外)。