c#服务程序导致电脑死机

wlnlgt 2019-12-11 04:08:16
c# windows服务程序 ,是一个接收gps定位数据的服务器
偶发出现卡死服务器电脑的情况,状况是cpu瞬间跑满,鼠标键盘无反应,必须按电源键关闭服务器。
大致找了下重现规律,平常该程序运行正常,只有服务器刚重启后很大概率会发生,一打开该应用程序cpu瞬间跑满电脑死机。

用到多线程 加了sleep。不知道会是什么原因,希望各路大神指正
...全文
225 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
wlnlgt 2020-05-06
  • 打赏
  • 举报
回复
程序在什么情况下会使得cpu100%
datafansbj 2019-12-11
  • 打赏
  • 举报
回复
如果服务器CPU 核心数量较多,服务又是多线程的,如果代码里使用了很多 Lock,易发生死锁。一旦死锁 CPU 使用率就会上到 100%。以前曾写过一个服务用于接收网络数据,Lock 没用好就发生过此类问题,在普通机器上(4核心 CPU)没问题,部署到服务器上(双路、24核心)就经常发生死锁,后来去掉了一些不必要的 Lock,并将 Lock 换成 Monitor 后解决了这个问题。
andy_wanhl 2019-12-11
  • 打赏
  • 举报
回复
你这个要找到原因,用尽一切手段,log文件,程序循环体,异步侦听程序。条件允许的话,自己的机子日夜跑,多打日志。把原因搞清楚,才有对应的解决方案。
wlnlgt 2019-12-11
  • 打赏
  • 举报
回复
引用 1 楼 wanghui0380 的回复:
刚开机,很多依赖服务和环境尚未准备好

所以此时如果不先检查依赖,会有大量的异常,然后重试。

比如gps定位,都还没连上网那怎么搞?一大堆异常重试,where(true)


不是刚重启,是每次重启服务器后可能会发生这个情况。
确定操作系统已经正常启动了,系统启动好后隔几个小时再打开该应用程序也是会出现这个问题
wanghui0380 2019-12-11
  • 打赏
  • 举报
回复
刚开机,很多依赖服务和环境尚未准备好 所以此时如果不先检查依赖,会有大量的异常,然后重试。 比如gps定位,都还没连上网那怎么搞?一大堆异常重试,where(true)
微信小程序系统教程[初级阶段],微信小程序0基础学起,讲解微信小程序开发的基础知识。 微信小程序系统教程共有“微信小程序系统教程[初级阶段]”、“微信小程序系统教程[中级阶段]——核心技术”、“微信小程序系统教程[阶段]客服消息+微信支付+九宝电商系统”。 “微信小程序系统教程[阶段]全套课程”包含: 1.微信小程序系统教程[阶段]_客服消息 2.微信小程序系统教程[阶段]_微信支付 3.微信小程序系统教程[阶段]_九宝电商系统 学习“微信小程序系统教程[阶段]”要求有微信小程序的基础。建议先学习“微信小程序系统教程[初级阶段]”、“微信小程序系统教程[中级阶段]”,后在报名“微信小程序系统教程[阶段]”。 阶段讲解的客服消息,是针对小程序的。后台程序用接近底层的技术,没有使用三方技术。这样降低同学们学习成本。 微信支付,这部分课程很有难度,要求同学们认真听讲,有不会的技术问题可以请教老师。购买课程后请联系老师,提供单号,给你源程序。 九宝电商系统是一套十分适和学习、项目的课程。既可以系统的学习微信小程序相关知识,还可以修改后上线。 “微信小程序系统教程[中级阶段]——核心技术”重点讲解微信小程序事件、组件、API 微信小程序系统教程[初级阶段],微信小程序0基础学起,讲解微信小程序开发的基础知识。 购买课程的同学,可赠送就九宝老师编写的《微信小程序开发宝典》。 购课请咨询qq2326321088

110,536

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧