外网IP改变时自动通知
摘要:有时候需要在家里连接公司的服务器,但是它的外网IP会经常变换。当然可以用花生壳之类来解决,不过作为程序员,还是尝试用程序的方法解决吧。接口定义Windows里在外网IP改变时好像没有现成的事件,所以定义了这样一个接口IPublicIPMonitor:public interface IPublicIPMonitor{ event EventHandler<PublicIpChangedEventArgs> PublicIpChanged; void Start(); void Stop();}当监测到IP改变时会触发一个事件PublicIpChanged,有两个方法分别用来开...
阅读全文
最近遇到的.Net笔试题(二)
摘要:问题:根据线程安全的相关知识,分析以下代码,当调用Fun3方法时i>10时是否会引起死锁?并说明理由。
阅读全文
最近遇到的.Net笔试题(一)
摘要:问题:try {}里有一个return语句,那么紧跟在这个try后的finally {}里的code会不会被执行,什么时候被执行,在return前还是后?
阅读全文
在C#中暂停一个线程
摘要:本来可以用Thread.Suspend暂停的,但它被弃用了,微软建议用Monitor, Mutex, Event, Semaphore等来做线程同步或保护资源。有时候我们只是想单纯的暂停一个线程,例如一个爬虫程序,很久爬不完暂停下吧(也许没什么用处......),可以用下边的办法。先定义一些线程状态:在Pause方法里改变当前状态:再有一个方法处理状态改变请求:在这个方法里如果状态为TaskSta...
阅读全文
Func的应用
摘要:工作中常会遇到同样的代码段,例如操作数据库就有打开连接、执行查询、异常处理、日志等,可能会这样写 返回一个Model 执行查询上边都有类似的逻辑,有没有办法简化呢?我们发现不同的只是try 里的内容,所以可以写这样一个方法:现在第一个就可以这样:第二个:会不会方便一点呢。:)以上DoExecute是有问题的……,这里只是为了演示Func的用法。聪明的您应该可以看出它的问题所在吧!
阅读全文