gpt4 book ai didi

c# - .net - 如何将 Windows 服务与系统托盘应用程序连接

转载 作者:可可西里 更新时间:2023-11-01 11:14:51 25 4
gpt4 key购买 nike

我有一个定期执行某些操作的 Windows 服务。在用户帐户上运行与 Windows 服务通信(通过 .net 远程处理)并向用户显示状态和一些选项的系统托盘应用程序(用 C# 编写)。

除系统托盘应用程序使用 20-30MB 内存外,一切正常!它必须在终端环境中工作,当 50 个用户登录时,只有系统托盘应用程序占用 >1GB 的内存!而且我不必添加,那是错误的:)

是否可以编写较小的 .net 系统托盘应用程序? (最多 1-2MB?)或者我应该用c/c++写吗?那么,我应该在 Windows 服务(用 C# 编写)和系统托盘应用程序之间使用什么样的通信?

最佳答案

另一个考虑因素是 .NET 应用消耗的大量内存在共享 (.NET) dll 中,并且在运行多个实例时不会重复(除非操作系统使用随机 dll 加载地址)。

您还可以通过将程序集安装到 GAC 并使用 ngen 对它们进行预 JIT 来减少 JIT 编译所使用的内存。同样,这将导致内存使用量减少除非操作系统随机化 dll 加载地址。

关于c# - .net - 如何将 Windows 服务与系统托盘应用程序连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2873325/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com