conhost.exe 似乎泄漏内存

2023-12-25

我有一个在 IIS 中运行的 .NET Framework ASP.NET 应用程序。该应用程序启动了一个长期存在的子流程,但在其他方面并不引人注目(只有一个端点有效地将请求代理到子流程)。

当系统处理请求时,计算机上 conhost.exe 的内存使用量稳步上升(~线性增长);大约一天后,它将消耗 0.5-1 GB。每29小时,IIS应用程序池自动进行自我回收;此时,并发主机使用率回落至零,但随后又开始稳定增长。

是什么导致 conhost 使用这么多内存?

UPDATE:

我看到设置为Console.BufferWidth and Console.BufferHeight可能会导致 conhost.exe 使用更多内存。因此,我添加了这些值的日志记录。但是,我的应用程序显示恒定的小缓冲区宽度和高度。

UPDATE:

根据 @simon-mourier 的评论,我们提取了附加到 conhost 进程的 dll。全部都在 System32 中。该列表是:conhost、ntdll、kernel32、kernelbase、msvcrt、Conhostv2、combase、ucrtbase、RPCRT4、bcryptPrimitives、GDI32、gdi32full、USER32、win32u、IMM32、OLEAUT32、msvcp_win、PROPSYS、sechost、shcore、SHELL32、cfgmgr32、windows。存储、powerprof、advapi32、shlwapi、kernel.appcore 和 profapi。

UPDATE:

看起来相似(如果不一样)Windows 10 (1607) / Windows Server 2016 上的 ASP.NET Core ILogger 内存泄漏 https://stackoverflow.com/questions/63063591/asp-net-core-ilogger-memory-leak-on-windows-10-1607-windows-server-2016。不幸的是,这也缺乏答案。


事实证明这是一个 Windows 操作系统错误。我们就该问题联系了 Microsoft 支持人员并收到了补丁(可能与 @sky 在 stackoverflow.com/a/68577179/779506 中提到的补丁相同)。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

conhost.exe 似乎泄漏内存 的相关文章

  • 了解 C# 中的协变和逆变接口

    我在一本有关 C 的教科书中遇到过这些内容 但我很难理解它们 可能是由于缺乏上下文 对于它们是什么以及它们有什么用处 是否有一个很好的简洁解释 编辑以澄清 协变接口 interface IBibble
  • 无法在 Powershell 中运行 R.exe

    我经常发现在命令行 Windows 上运行 R 更有用 然而 当我在 Powershell 中尝试时 我往往会遇到问题 但这可以通过第一次运行轻松克服cmd然后就可以了 这是我执行此操作时遇到的错误R CMD BATCH Invoke Hi
  • 通过模拟器控制台或 ADB 更改 Android 模拟器方向

    我正在尝试构建一个自动化测试框架 用于检查应用程序应该响应的基本内容 而不会崩溃 其中之一是检查应用程序是否正确响应配置更改 现在 由于它是自动化的 我必须以编程方式在横向和纵向之间切换模拟器的方向 并观察它是否崩溃 大写 因为有很多与 c
  • 在构建服务器上运行单元测试时出现 BadImageFormatException

    我在一个具有 AnyCPU 架构的项目中进行了一套 NUnit 测试 其中一些测试使用 x86 32 位 程序集中的类型 当我在本地运行测试 通过 ReSharper 时 它们都通过了 然而 当它们在 Jenkins 上执行时使用nunit
  • Perl:管理 Windows 上的路径编码

    我正在努力处理包含非英文字符的路径 Activestate Perl Windows XP 如何打开 写入 复制等位于包含希腊语 俄语 法语重音字符的路径中的文件 假设我要将 text txt 文件复制到的目录是 C Documents a
  • Environment.CurrentDirectory 与 System.IO.Directory.GetCurrentDirectory

    我正在编写一个 Net WinForms 并不断在调试和发布配置之间切换 并且有一些文件我需要任一配置才能访问 我想做的是将文件放在 BIN 文件夹中的公共目录中 这样它看起来像这样 MyProject Bin CommonFiles My
  • 打印“X”个字符数与“X”字符串长度的所有可能组合(暴力破解)

    我正在尝试编写一个单词组合生成器 我的意思是打印 X 个字符数与 X 字符串长度的所有可能组合 首先 我需要说的是 我在 StackOverFlow 中看到了一个关于这个问题的问题 其中有很多单词生成器的答案来执行此操作 在不同的语言上 但
  • 假装 .NET 字符串是值类型

    在 NET 中 字符串是不可变的 并且是引用类型变量 这通常会让新的 NET 开发人员感到惊讶 因为他们的行为可能会将它们误认为是值类型对象 然而 除了使用实践StringBuilder对于长连接 尤其是 在循环中 在实践中是否有任何理由需
  • 在 VS 中运行时如何查看 C# 控制台程序的输出?

    我刚刚编写了一个名为 helloworld 的聪明程序 它是一个 C NET 4 5 控制台应用程序 在扭曲的嵌套逻辑迷宫深处 使用了 Console WriteLine 当我在命令行运行它时 它会运行并且我会看到输出 我可以执行其他命令并
  • Visual Studio '17 未在参考管理器中显示程序集

    我遇到的问题是 我似乎无法弄清楚如何添加对某些解决方案的引用 在我从 Visual Studio 17 开始的大多数解决方案中 我在解决方案资源管理器中看到 引用 但例如对于 asp net core web api 我得到 依赖项 每当解
  • CUDA NSight 未随 Windows 8 上的 CUDA 5.0 安装文件一起安装? [关闭]

    Closed 这个问题是无关 help closed questions 目前不接受答案 据我所知 Nvidia 网站上没有 Nsight Eclipse 的下载链接 它说它将由 CUDA 5 安装本机安装 但并没有随CUDA安装一起安装
  • Windows 窗体中的提示对话框

    我在用System Windows Forms但奇怪的是没有能力创造它们 如何在没有 javascript 的情况下获得类似 javascript 提示对话框的内容 MessageBox 很好 但是用户无法输入内容 我希望用户输入任何可能的
  • 在 ViewModel 中使用 CollectionViewSource 的正确方法

    我使用拖放将数据源对象 数据库模型 绑定到DataGrid 基本上遵循这个例子实体框架与 WPF 的数据绑定 http msdn microsoft com en us data jj574514 通过这个实现 一切都运行良好 XAML
  • VB.net 应用程序保留以前的版本

    我有一个正在发布的 Visual Basic 项目 并且每次都会增加版本号 当我安装新版本时 它会打开 但一旦应用程序重新启动 它似乎就会恢复到以前的版本 我不知道为什么 尝试更新发布应用程序时所需的最低版本 转到应用程序属性 gt 发布
  • 为什么在 OpenCV 中访问该矩阵时出现内存错误?

    我只是想写入给定大小的矩阵 当我在 Valgrind 中运行该程序时 出现内存错误 如下所示 主要 cpp include
  • 演示如何在 C# 4.0 中使用新的“dynamic”关键字

    这是 4 0 版本中新的 C 未来 称为动态 告诉我如何在我的代码中使用它以及这个未来可以如何帮助我 相关问题 新的 dynamic C 4 0 关键字是否弃用了 var 关键字 https stackoverflow com questi
  • Parallel.ForEach - 优雅取消

    关于等待任务完成和线程同步的主题 我目前有一个迭代 我已将其包含在 Parallel ForEach 中 在下面的示例中 我在评论中提出了一些关于如何最好地处理循环的优雅终止的问题 NET 4 0 private void myFuncti
  • 如何将对 System.Data.DataSetExtensions 的引用添加到网站 ascx.cs 文件?

    我们正在处理一个网站项目并尝试参考System Data DataSetExtensions 使用 Web 应用程序会更好 不过 技术主管有她的理由 这是我们尝试过的 找到装配路径 打开 Visual Studio 命令提示符并运行sn e
  • 运行 Aero 时如何确定实际窗口窗体大小(包含所有非客户端元素)?

    我试图将我的表单精确定位在任务栏上方 不幸的是 我的努力受到了以下事实的阻碍 this Height在我的表单上返回一个比实际表单 包含所有边框 标题栏等 小 10 像素的值 我正在运行带 Aero 的 Windows 7 当 Aero 关
  • 使用批处理文件挂载 .iso 文件 win windows 8 [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 我有一个游戏 已备份到 iso 文件 笔记本电脑中的磁盘驱动器很吵 并且希望从单个快捷方式运行它 而不必每次都挂载 iso 文件 我运行

随机推荐

  • 在 Chromium 中使用 WebCrypto 生成 RSA 密钥对

    以下代码适用于 Firefox 76 0 1 use strict let RSAKeys async gt RSAKeys await crypto subtle generateKey name RSA OAEP modulusLeng
  • node_modules 中的 webpack 4 图像:找不到模块

    问题 我使用 webpack 4 将 scss 编译为 css 并使用 MiniCssExtractPlugin 将 css 保存到不同的文件中 问题是 我无法加载通过 url 包含在 scss 文件内的图像和字体 运行开发或生产之间也没有
  • 如何初始化一个大小由 argc 和 argv 确定的二维数组?

    我正在编写代码 该代码将跟踪每次访问数组中的特定元素时的情况 数组本身将根据用户的输入动态分配 因此我所看到的函数都不是我正在寻找的 更具体地说 如何动态分配数组的行和列 然后将每个元素初始化为 0 前任 SIM A B int array
  • curl_multi_exec 显示不同的运行

    我只使用curl multi exec 来处理5 个url 现在我有这个奇怪的问题 当我在 xampp 上运行我的代码时 它运行完美 我可以看到 running 值初始化为 5 然后不断减少 但是 当我在其他本地主机 在arm架构上 上尝试
  • 使用 WebGL 索引缓冲区绘制网格

    3 个索引缓冲区 https stackoverflow com questions 2696182 3 index buffers问了一个更困难的问题 但我觉得他们的主要问题归结为我的 有没有办法使用索引缓冲区在 WebGL 中多次访问同
  • pyinstaller编译的文件有ssl问题,错误:185090050

    我有一些 python 代码可以在我的 Windows 机器上的 python ide 和 cmd 提示符下成功运行 当我用 pyinstaller 编译 到一个文件中 后 我收到以下错误 Traceback
  • flot.js - 位置垂直刻度,但被切断并居中

    我使用 flot js 绘制 x 轴上带有时间戳的图表 由于我在这些图表上会有很多刻度 所以我垂直旋转它们 这样它们就不会重叠 这工作正常 但标签集中在刻度上 并且没有提供足够的空间 因此它们被切断 我没有使用ticrotor插件滴答声 h
  • UDP/TCP 打洞 vs UPnP vs STUN vs?

    我尝试制作一个 P2P 程序 需要帮助来穿越客户端的 NAT 我在 stackoverflow 上读过很多问题 但我从来不知道通过 NAT 的所有方法的缺点和优点是什么 有多少路由器支持哪些方法 大公司常用哪些方法 BitTorrent T
  • OSError:输入/输出错误 - Google Colab

    Using h5py File path r 或 喀拉斯 model load weights path on h5文件产生以下错误 我已经在 Colab 上训练模型几个月了 从来没有遇到过这个问题 从云端硬盘下载后 相同的文件在我的计算机
  • 使用 graphql 公开动态模式

    我的应用程序动态处理模式 用户可以上传新域或更改现有域的定义 例如 我发布的产品具有如下用户模式 user fn ln age Later user can change this definition to include new pro
  • 在 C++ 中修改后修复文件权限?

    我将数据保存在程序的可执行文件中 我将其复制到临时文件中 覆盖从 a 开始的部分 神奇的字符串 并将其重命名为原来的 我知道这是一个坏主意 但我这样做只是为了实验 到目前为止 一切正常 除了每次替换文件时我必须重新启用 允许作为可执行文件运
  • 远程检查交换凭据并检查登录的用户

    我曾尝试过这一点 但没有取得多大成功 基本上我需要使用 EWS 远程登录 Exchange 问题是我不知道用户是否已正常登录 或者凭据是否错误 因为我没有得到任何回报 如果我提供了错误的凭据 软件就会继续运行 我是否遗漏了一些东西 我已经检
  • 无法导入模块

    首先 这很可能不是路径问题 我在 eclipse 中有一个 pydev 项目 这是目录结构 Genetic Framework Genetic Framework Genetic init py GA py crossover py fit
  • 如何测量 x86 纳秒以下的运行时间?

    我搜索并使用了许多方法来测量经过的时间 为此目的有很多问题 例如 this https stackoverflow com questions 6749621 how to create a high resolution timer in
  • 访问函数内的函数(嵌套函数?)[重复]

    这个问题在这里已经有答案了 这里是Python菜鸟 如何获取 fib 函数中的 内部 函数 from time import sleep class Fibonacci object def init self a b limit 50 s
  • 这个Timer会从内存中释放吗?

    考虑 C 中的这对函数 void func1 DispatcherTimer tmr new DispatcherTimer tmr Interval TimeSpan FromSeconds 5 tmr Tick func2 tmr St
  • C# 是单调度语言还是多调度语言?

    我试图准确理解什么是单次调度和多次调度 我刚刚读过这个 http en wikipedia org wiki Multiple dispatch http en wikipedia org wiki Multiple dispatch 从这
  • 使用实体框架作为 ORM 的 winform 应用程序的 MVC 或 MVP 架构

    我要开发一个相当规模的winform项目 我打算使用实体框架作为 ORM 工具 现在我正在寻找一种架构 MVC MVP MVVM 等 来实现所有这些 首先 Windows 窗体的 n 层架构的选择很少 而且我得到的大多数都是在 EF 进入市
  • ActionScript:一个 .as 文件中有多个公共函数?

    当我一直在使用 AS 时 我开发了一系列实用函数 例如 cat utils curried as package utils public function curried f Function boundArgs Function fun
  • conhost.exe 似乎泄漏内存

    我有一个在 IIS 中运行的 NET Framework ASP NET 应用程序 该应用程序启动了一个长期存在的子流程 但在其他方面并不引人注目 只有一个端点有效地将请求代理到子流程 当系统处理请求时 计算机上 conhost exe 的