我有一个 Windows 服务,它被配置为按预定义的时间表发送电子邮件。该计划与 System.Timers.Timer 一起使用,每次 Timer_Elapsed 被引发时,我都会调用 Timer.Stop(),发送电子邮件(每次大约 1500 封电子邮件),计算下一个滴答声将被引发的时间量并启动计时器(调用 Timer.Start() 方法)。问题是当计时器结束并且进程开始发送电子邮件时,正在使用的内存增加但在完成后不会减少。当我在“非定时”应用程序中调用该函数时,已使用的内存在完成发送过程后被释放。谁能帮我理解为什么会这样?也许与计时器中使用的线程有关?
提前致谢。