当前位置: 首页 > 面试题库 >

我可以在Linux中执行写时复制memcpy吗?

谯振国
2023-03-14
问题内容

我有一些代码,经常在对它们进行很小的更改之后,就经常复制一个大的内存块。

我已经实现了一个跟踪更改的系统,但是我认为,如果可能的话,告诉操作系统对内存进行“写时复制”,让它仅处理这些部分的副本,那可能会很好。哪个改变。但是,尽管Linux会进行写时复制,例如,在fork()ing时,但我找不到控制它并自己执行的方法。


问题答案:

您最好的机会可能是mmap()将原始数据保存到文件中,然后mmap()再次使用来复制相同的文件MAP_PRIVATE



 类似资料:
  • 问题内容: 有时我想对流执行一组操作,然后用其他操作以两种不同的方式处理结果流。 我可以不必指定两次常见的初始操作来执行此操作吗? 例如,我希望存在以下方法: 问题答案: 通常这是不可能的。 如果要复制输入流或输入迭代器,则有两个选择: 答:将所有内容都保存在集合中,例如 假设您将一个流复制为两个流,然后将。如果您的元素中包含高级元素,并且元素中包含,则必须将元素保留在内存中,以便跟上步伐。如果流

  • 本文向大家介绍是否可以在JavaScript执行中写入MongoDB控制台?,包括了是否可以在JavaScript执行中写入MongoDB控制台?的使用技巧和注意事项,需要的朋友参考一下 要在控制台上编写,您需要使用方法。语法如下- 要显示对象,可以使用。语法如下- 让我们实现这两个功能。第一个查询如下所示以显示某些内容- 以下是控制台上的输出- 让我们创建一个对象。查询如下- 这是显示上述对象“

  • 问题内容: 如果我在多线程环境中有一个未同步的Java集合,并且不想强制该集合的读者进行同步[1],那么我可以同步编写器并使用引用分配的原子性的解决方案是否可行?就像是: 在这种情况下,推出自己的解决方案似乎常常会失败,因此我会对了解其他可用来防止对象创建和阻止数据使用者的模式,集合或库感兴趣。 [1]原因是与写入相比,读取所花费的时间比例更大,并且存在引入死锁的风险。 编辑:在一些答案和评论中有

  • 问题内容: 我正在将pytest用于我的selenium测试,并想知道在一个测试中是否可能有多个断言? 我调用了一个比较多个值的函数,并且我希望测试报告所有不匹配的值。我遇到的问题是,使用“ assert”或“ pytest.fail”会在发现不匹配的值时立即停止测试。 有没有办法让测试继续运行并报告所有不匹配的值? 问题答案: 正如Jon Clements所评论的那样,您可以填充错误消息列表,然

  • 问题内容: 我花了一些时间在AngularJS Bootstrap弹出窗口上玩耍,并且意图很不错,但是我想做的就是将它绑定,并且它的依赖脚本绑定到同一控制器,我无法正常工作现在是关闭按钮。如果我创建一个NEW控制器,并注入$ modalInstance,它可以很好地工作,并且我可以连接关闭按钮而没有任何问题,但是我不想要第二个控制器,这似乎过于复杂:我想要所有的控制器逻辑在formControll

  • 问题内容: 可以在Linux中运行Xcode吗?Mac OS X基于BSD Unix,这可能吗? 据我所知,有一个带有iPhone模拟器的MonoDevelop插件。 问题答案: Xcode的低级工具链(gcc编译器系列,gdb调试器等)都是开源的,并且是Unix和Linux平台通用的。但是IDE(编辑器,项目管理,索引,导航,构建系统,图形调试器,可视数据建模,SCM系统,重构,项目快照等)是M