当前位置: 首页 > 知识库问答 >
问题:

不可避免地调用abort()可能会产生什么影响?

梅安平
2023-03-14

我对“关闭”我的程序的abort术语的术语和矛盾感到有点困惑,从该函数的描述来看,它说析构函数和开放资源可能分别不被调用/关闭。那么,在调用abort()之后,我的程序是否仍在运行并且存在内存泄漏或者资源仍然打开?

共有1个答案

刘兴修
2023-03-14

传递给std::atexit()的函数也不会被调用。是否关闭打开的资源(如文件)是由实现定义的。

这意味着实现可以决定发生什么。在任何公共使用者操作系统上,当您的进程退出时,与您的进程相关联的大多数对象都会被销毁。这意味着您不会泄漏例如通过new或打开文件分配的内存。

可能有一些不常见的对象没有被释放--例如,如果您有一个共享内存块,它可能会留在附近,以防另一个进程试图访问它。或者,如果您创建了一个临时文件,打算以后删除它,现在该文件将留在那里,因为您的程序没有时间删除它。

 类似资料:
  • 使用时,是否有需要考虑的性能影响? 我正在编写一个从目录检索文件的查询,这就是查询: 那么,在决定进行这样的转换时,是否应该考虑某种性能影响--还是只在处理大量文件时才考虑?这是一个可以忽略不计的转换吗?

  • 问题内容: React文档指出函数应该是 纯 函数,这意味着它不应该在函数中使用。但是,我相信当状态依赖于“远程”(即由ajax调用产生的结果)时。唯一的解决方案是在函数内部 就我而言。我们的用户应该可以登录。登录后,我们还需要检查用户的访问权限(ajax调用),以决定如何显示页面。代码是这样的 之所以无法显示ajax调用,是因为当用户单击LOGIN按钮时,页面会重新呈现,并且还需要ajax调用。

  • 为什么可能是这种测试要避免的事情。 我在对这个答案的评论中读到了这一点:https://stackoverflow.com/a/21172873/516167 标记应在其上进行注射的字段。 允许速记模拟和间谍注入 最小化重复模拟和间谍注入 参考:@InjectMocks JavaDoc。

  • 我有个密码: 我收到一个警告 我怎么才能修好它?

  • 我正在检查和。尽管如此,我还是在Android studio的上收到了警告。 如何避免这种警告? 我使用的是改型:2.3.0和GSON:2.8.1。我已经尝试了这个问题的解决方案(refitfit方法调用可能会产生'java.lang.NullPointerException')。但它不起作用

  • 接口状态是Abort,HTTP Status为0,这可能是什么问题?之前好好的,今天去看成这样了。 接口没有返回信息。