摘要: 一、CLR线程池基础 前面说过,创建和销毁线程是一个比较昂贵的操作,太多的线程也会浪费内存资源。由于操作系统必须调度可运行的线程并执行上下文切换,所以太多的线程还有损于性能。为了改善这个情况,CLR使用了代码来管理它自己的线程池。可将线程池想像成可由你的应用程序使用的一个线程集合。每个进程都有一个线程池,它在各个应用程序域(AppDomain)是共享的. CLR初始化时,线程池是没有线程的。在内部,线程池维护了一个操作请求队列。应用程序想执行一个异步操作时,就调用某个方法,将一个记录项(entry)追加到线程池的队列中。线程池的代码从这个队列中提取记录项,将这个记录项派遣(dispat... 阅读全文
posted @ 2014-03-27 19:49 烧点饭 阅读(2212) 评论(0) 推荐(2) 编辑
摘要: 以下解决方案来自于网络,仅供参考方案1/// /// Calculates the distance between to lat/long points and returns the approximate distance in kilometers/// /// Point in long/lat decimal degrees/// Point in long/lat decimal degrees/// Distance in kilometersprivate double CalcDistance(Point from, Point to){ double rad = 6371 阅读全文
posted @ 2014-03-27 12:41 烧点饭 阅读(916) 评论(0) 推荐(0) 编辑