关于C# winform 使用MQTT 的问题

不吃西红柿炒鸡蛋 2018-03-19 11:10:21
是这样的,我做了一个监控程序,监控文件夹是否有文件上传,有文件则执行mqtt推送事件,然后网页端接收,我的这个推送程序运行一段时间总是内存溢出,我知道原因就是推送方法内部每次推送都要new mqtt对象。如果new mqtt对象写在方法外,推送的方法就获取不到mqtt对象。

我的问题是mqtt如何写在方法外减少每次new 一个新的对象,或者写在方法内及时销毁对象。最终的目的就是不要内存增加。

MqttClient client = new MqttClient("192.168.1.200");
string clientId = Guid.NewGuid().ToString();
client.Connect(clientId);
...全文
712 1 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
南天空 2018-03-19
  • 打赏
  • 举报
回复
楼主参考一下单实例模式的思路,因为文件的上传下载是没有规律的,反复的创建和销毁MqttClient实例是不合理的,因此不建议手动销毁线程释放资源。

111,092

社区成员

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

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

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