ZMQ C# using(){}请教

问题描述

自己百度了知道using()会在{}执行结束后通过Disposable释放()中的对象,会不会在释放对象没结束的时候,又开始执行了循环代码和报错的提示如下:(单步执行没有错误)如上代码运行的时候,立马报错,但是加上Thread.Sleep(200);如下代码、开始不会报错,但是过一段时间仍会报错、大家来分析下原因:

解决方案

解决方案二:
知道的过来给说说~~
解决方案三:
UPMyself
解决方案四:
againup
解决方案五:
提示"Addressinuse"socket还没完全关闭吧
解决方案六:
贴出你的ZmqSocket类的Dispose()方法源代码。没有看过源代码,空谈“释放”这个词儿,对“到底Dispose()里边干什么工作”都不知道,你很容易乱用“释放”这两个字。
解决方案七:
Dispose是不会在没执行完成的时候就返回的。但是,如果ZmqSocket的Dispose方法中(例如Socket非托管资源的释放)在真正释放非托管资源之前便立即返回了(例如设置了Linger),这样的话可能会发生你遇到的情况,所以需要检查的还是ZmqSocket这个类的Dispose方法。
解决方案八:
谢谢大家的回帖,我是这样认为的:在using语句执行完,会自动调用((IDisposable)skt).Dispose();来释放using括号中的对象,单步执行的时候是不会出错的,我将代码改为下面时同样会出上面的错,但是取消注释这句代码Thread.Sleep(2000);程序是不会报错的
解决方案九:
没有skt的代码,谁知道它里面到底干了什么有可能本身就是单例模式
解决方案十:
using会在程序超过using代码块的时候,释放using所创建的对象。1.zmqsocket里面怎么释放资源的2.研究一下socket是怎么绑定的,有可能这里问题
解决方案十一:
引用8楼Z65443344的回复:

没有skt的代码,谁知道它里面到底干了什么有可能本身就是单例模式

有可能是单例。
解决方案十二:
不是单例,这个根本就是个静态类很明显Create方法是个静态方法,而CreateSocket是另一个静态方法既然是两个静态方法,怎么能保证每次出来的socket对象不是同一个对象?如果根本就是同一个对象,那当然这个还没释放就执行下一个的bind,会报错:地址已经添加过
解决方案十三:
现在可以了,代码如下:

时间: 2024-10-26 20:40:29

ZMQ C# using(){}请教的相关文章

请教各位算法大神,acm一道题:赋权无向图的最小权值遍历用什么算法(存在负权值)?

问题描述 请教各位算法大神,acm一道题:赋权无向图的最小权值遍历用什么算法(存在负权值)? 1C 如题,问题是这样的:有一赋权无向连通图,可以从任意一结点出发,求遍历所有结点的最小权值路线.结束点也是任意的,每个节点也没有访问次数的限制,但必须每个节点都要被访问到.,想问一下用什么算法呢? 解决方案 可以参考djstera算法,求最短路径~借鉴其中的标记功能,只不过结束状态标志是所有节点均已遍历. 解决方案二: 可以参考djstera算法,求最短路径~借鉴其中的标记功能,只不过结束状态标志是所

请教 Asterisk 服务器架设

问题描述 请教 Asterisk 服务器架设 大家好,请教一个Asterisk的问题. 由于项目测试的目的,需要在公网架设一个Asterisk服务器,作为VoIP的服务器.需要支持ICE协议,穿越对称式NAT(Symmetric NAT). PC客户端使用SIP通讯软件,实现在不同NAT的语音和视频对话. 希望Asterisk 配置经验的朋友,多多指教! 解决方案 参考:http://www.360doc.com/content/13/0827/11/13654078_310207980.sht

请教 自己写的mysqli 操作数据库的类 DB.class.php

问题描述 请教 自己写的mysqli 操作数据库的类 DB.class.php 类是这样写的: <?php class DB{ //属性 private $host; private $port; private $name; private $pass; private $dbname; private $prefix; //设置表前缀 private $charset;//设置字符集 private $mysqli; //设置mysqli类对象 //设置构造函数 public functio

html-CSS关于div布局的小问题,请教了,谢谢

问题描述 CSS关于div布局的小问题,请教了,谢谢 <head> <style> .ABC{width:100px; height:100px; background:red; margin:auto; margin-left:20px;} </style> </head> <body> <div class="ABC"></div> </body> </html> 为什么居中

svg-我copy一个网页 它的icomoon的图标弄不下来 想请教去哪下这几个字体库

问题描述 我copy一个网页 它的icomoon的图标弄不下来 想请教去哪下这几个字体库 @font-face { font-family:'icomoon'; src:url(IcoMoon-Free-master/icomoon-MBT.eot); src:url(IcoMoon-Free-master/icomoon-MBT.eot?#iefix) format(""embedded-opentype"")url(IcoMoon-Free-master/ico

算法-递归问题,学习请教?求高人指点?字数够了吧!!!

问题描述 递归问题,学习请教?求高人指点?字数够了吧!!! 今天研究了一些递归程序,简单点的递推过程还能想明白执行过程,复杂的就整不明白了,请问各位大神们需要认真的研究递归过程吗?是不是会用就行了啊?

html-本人菜鸟一枚,请教大神一个关于CSS中ID和类选择器不能用,而标签选择器能用的问题

问题描述 本人菜鸟一枚,请教大神一个关于CSS中ID和类选择器不能用,而标签选择器能用的问题 FIREFOX浏览器,代码如下: HTML代码片段: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> @import url(template/default/styl

c++类的序列化问题请教

问题描述 c++类的序列化问题请教 各位大神,小弟需要将一个c++类序列化为json来进行网络传输,有一个小小问题想请教一下,我在网上查了一下,很多都说要用jsoncpp.看了很久还是不知道这个序列化的方法. 现在假设我有一个类如下: class A { public: int A; void hello(); } 请问我要怎么进行序列化呢 解决方案 简单的话,直接拼接字符串就可以了. 解决方案二: 序列化使用jsoncpp或者之类的库,还是需要自己写序列化代码的 参考:http://qiusu

azure-大虾们,请教个问题, VPN Gateway的费用是否包括了对应的ip地址的费用?

问题描述 大虾们,请教个问题, VPN Gateway的费用是否包括了对应的ip地址的费用? 大虾们,请教个问题, VPN Gateway的费用是否包括了对应的ip地址的费用?azure 求回复 解决方案 据我所知,IP地址是不收费的.所以不存在什么包含不包含的问题. 解决方案二: Hi, 关于这个问题,请阅读这篇文章:http://www.windowsazure.cn/pricing/details/networking/,如果你有不明白的地方,请联系世纪互联的技术支持团队,您可以通过以下途