0
我有一个Windows服务与准备topshelf.This项目发送请求Web服务和响应XML数据。之后,这个XML数据序列化列表对象和比这些对象从SQL更新信息。当启动服务约8 MB后,增加1.8 GB内存超出范围exception.Why?TopShelf windows服务内存泄漏,同时更新信息从sql
public class HostService
{
private readonly Timer _updaterThread;
private readonly object _lockObject;
private readonly Manager _manager;
public HostService()
{
_manager = new Manager();
_lockObject = new object();
var interval = Convert.ToInt32(ConfigurationManager.AppSettings["UpdateInterval"]);
_updaterThread = new Timer(interval) { AutoReset = true };
_updaterThread.Elapsed += UpdateInfo;
}
public void Start()
{
try
{
LoadLogger();
_updaterThread.Start();
}
catch (Exception e)
{
FXEventLogger.Instance().AddLog(EventLogEntryType.Error, e);
}
}
private void UpdateInfo(object state, EventArgs ev)
{
lock (_lockObject)
{
_manager.UpdateFmdProductions();
}
}
public void Stop()
{
try
{
_updaterThread.Stop();
FXEventLogger.Instance().AddLog(EventLogEntryType.SuccessAudit, "Service stopped");
FXEventLogger.Finalize();
}
catch (Exception e)
{
FXEventLogger.Instance().AddLog(EventLogEntryType.Error, e);
}
}
请秀“UpdateFmdProductions ();” – KreminT
UpdateFmdProductions有两个方法调用 –