当前位置: 首页 > wzjs >正文

南昌 网站 公司做网站比较好的公司有哪些

南昌 网站 公司,做网站比较好的公司有哪些,跨境电商真的好做吗,怎么在文档中做网站一点就开C# --- 单例类错误初始化 没有释放资源导致线程泄漏Background原因分析问题一: 错误初始化(使用了箭头函数)问题一: 没有Dispose资源Background 背景: service A的其中一个Api会向mq发送消息问题:线上发现这个服务经常…

C# --- 单例类错误初始化 + 没有释放资源导致线程泄漏

  • Background
  • 原因分析
    • 问题一: 错误初始化(使用了箭头函数)
    • 问题一: 没有Dispose资源

Background

  • 背景: service A的其中一个Api会向mq发送消息
  • 问题:线上发现这个服务经常有几百个线程在同时运行,怀疑是发生了线程泄漏
  • 什么是线程泄漏:代码产生了大量的不应该出现的线程,导致占用过多资源,严重影响系统性能

原因分析

经过排查发现了一下问题代码

public class Dispatch
{public static Dispatch Instance => new Dispatch();private readonly Sender senderpublic Dispatch() { sender = new Sender();}
}public class Sender : IDisposable
{private readonly Task _recoveryTask;public Sender() { recoveryTask = Task.Factory.StartNew(new Action(this.ReceoveryTaskEntry), TaskCreationOptions.LongRunning)}private void RecoveryTaskEntry() {while (!this.Disposed){//impl}}public void Dispose() {_recoveryTask.Dispose()GC.SuppressFinalize(this); // 阻止终结器调用}
}

问题一: 错误初始化(使用了箭头函数)

public static Dispatch Instance => new Dispatch();//等价于
public static Dispatch Instance() 
{return new Dispatch();
}

以上代码在 Dispatch.Insatnce被调用时每次都会新建一个Dispatch实例,而Dispatch的构造方法里会创建并运行一个新的线程,也就是说每个requets都会创建一个新的线程

正确的初始化:保证单例类只有一个实例

public static Dispatch Instance { get; } = new Dispatch();

问题一: 没有Dispose资源

在Dispatch中没有dispose sender, 导致线程没有被释放

public class Dispatch
{public static Dispatch Instance => new Dispatch();private readonly Sender senderpublic Dispatch() { sender = new Sender();}
}

正确实现:在Dispose中释放资源

public class Dispatch
{public static Dispatch Instance => new Dispatch();private readonly Sender senderpublic Dispatch() { sender = new Sender();}public void Dispose() {sender.Dispose()//....}
}
http://www.dtcms.com/wzjs/483839.html

相关文章:

  • dw中用php做网站南宁白帽seo技术
  • 怎么做发卡网站佛山全市核酸检测
  • 专业做电商培训的平台电商seo是什么
  • 建筑工程网络数据安全管理系统佛山seo培训机构
  • 周至做网站足球世界积分榜
  • 象山做网站百度seo排名技术必不可少
  • 网站建设ftp软件有哪些医院网站建设方案
  • 康巴什网站建设市场营销案例
  • 美工做图片网站附近哪里有计算机培训班
  • 网站浏览图片怎么做的百度竞价排名点击软件
  • 武汉做网站hlbzx黑帽seo
  • 怎样做好网站百度seo网站在线诊断
  • 怎么建设自己导购网站抖音搜索关键词排名查询
  • 巢湖网站开发个人免费域名注册网站
  • 网页界面设计中交互设计是指网站如何做优化排名
  • 凡科互动可信吗公司seo推广营销网站
  • 网站建设及维护招聘武汉网络营销公司排名
  • 尚义网站建设wl17581高端网站建设
  • 国内返利网站怎么做旺道seo网站优化大师
  • 做水浒传有关的网站百度指数排行榜
  • 东莞市网站建设分站公司太原网站制作优化seo
  • 广州一起做网站企业管理培训公司排行榜
  • 有关建筑网站建设方案案例深圳优化公司哪家好
  • 个人网站设计及实现论文seo臻系统
  • 茶文化网站建设规划书范文人民日报最新新闻
  • 政府门户网站保障建设要求代运营一家店铺多少钱
  • 网站建设需求公司内部调查网络推广网站
  • 做网站细节推广员是做什么的
  • 不同类型网站比较微商软文
  • php动态网站开发巨量算数