我有一个简单的程序,它可以在多边形中消耗总距离和时间,我试图让它更快。
https://gist.github.com/mochja/cf5f477348ab8fde1a4a
我试图创建goroutine,我尝试过的第一件事是在pnpolys if语句周围创建一个goroutine,所以它应该为每个多边形中的每个数据创建goroutine并停止,但我遇到了exc的问题。它的时间约慢约40倍。也许我不能创造大量的goroutines或者我确实错过了一些东西。
代码已尝试过,简单测试,为什么我的执行时间比no-goroutine版本大?
for di := range d {
data := d[di]
go pnpoly(len(v[pi][0]), v[pi][0], v[pi][1], data.Longitude, data.Latitude)
}