我有一些代码可以处理一些数据(空间数据操作),在控制台应用程序中运行大约需要5秒钟。在ASP.NET环境中,相同的代码需要50秒钟才能运行。
我已经在Visual Studio(社区)中设置了使用64位版本的IIS Express的选项,并且我将x64平台定位为Web应用程序的构建配置中。
该处理消耗约600MB的RAM,因此这不是一个特别的数量。
如果是线程问题:当我在运行代码的WebApi控制器中运行System.Threading.ThreadPool.GetMaxThreads(out workers, out completions)
时,我得到32767个工作程序和1000个补全。
有什么办法可以使它以与控制台应用类似的性能运行?
我要向SimplifyAndReduce
函数中传递大约10个几何。以下行(#54)是大多数处理发生的地方:
return new NetTopologySuite.Operation.Union.UnaryUnionOp(shapes).Union();