首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >MapPoint 2009负载性能

MapPoint 2009负载性能
EN

Stack Overflow用户
提问于 2008-09-12 19:42:26
回答 2查看 1.1K关注 0票数 2

我在将MS MapPoint 2009集成到WinForms .Net 2.0的C#应用程序中遇到了一些问题。我已经将ActiveX MapPoint控件添加到表单中,让它显示地图和位置没有问题;我关心的是创建地图后加载地图所需的时间。

在我的开发机器上的测试显示,平均加载时间在3到5秒之间,在此期间,应用程序被完全锁定。虽然这并不是完全不能接受的,但失去对应用程序的控制是非常长的一段时间。另外,由于GUI线程被锁定,我无法显示加载对话框或什么东西来掩盖加载时间。

挂起的行是:(其中axMappointControl1是MapPoint控件)

代码语言:javascript
复制
axMappointControl1.NewMap(MapPoint.GeoMapRegion.geoMapNorthAmerica);

我尝试在另一个线程上执行NewMap方法,但是GUI线程最终仍然被阻塞。

我的问题是:

  • 当MapPoint加载时,我能做些什么来加快它的速度?
  • 是否有任何方法来加载MapPoint,这样它就不会阻塞GUI线程?

任何帮助都是非常感谢的。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2008-09-18 20:02:26

根据这些 线程 at mapforums.com的说法,ActiveX启动的缓慢是众所周知的,也是不可避免的(尽管线程化以帮助GUI响应的问题仍然存在。)

有一件事建议放弃ActiveX版本,转而支持MapPoint.Application对象。

希望这能有所帮助。

票数 3
EN

Stack Overflow用户

发布于 2011-01-04 14:54:12

是的,应用程序版本运行在自己的线程上-所以这应该是一个更快的选择-更容易做你自己的东西,而它正在启动。然而,当用户启动MapPoint 2010时,通常需要几秒钟的时间才能启动。

我将创建一个临时GUI线程,并使用它在启动和/或执行任何需要执行的线程安全初始化时显示一个启动屏幕。

对MapPoint实例(或ActiveX控件)的所有调用必须来自创建MapPoint控件或应用程序对象的同一个线程。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/59816

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档