谷歌折线高记忆用量?

时间:2016-05-03 12:04:07

标签: javascript google-maps google-chrome cefsharp google-polyline

每秒调用以下函数。目的是更新折线上的最后一个点以跟随标记。问题是,每次代码运行时,浏览器(CefSharp)的内存使用量会持续增加大约1 MB,在几分钟内从大约50 MB增加到200 MB以上。

function moveMarker(lat, lon, hdg, followme) {
    marker.setPosition(new google.maps.LatLng(lat, lng));

    var len = traceLine.getPath().length;
    traceLine.getPath().removeAt(len-1);
    traceLine.getPath().push(marker.getPosition());
}

通过删除最后三行,内存使用量保持稳定在53 MB左右。

使用以下代码从C#调用运行此代码的函数:

String js = String.Format("moveMarker('{0}','{1}','{2}','{3}');",
            lat.ToString(System.Globalization.CultureInfo.InvariantCulture),
            lon.ToString(System.Globalization.CultureInfo.InvariantCulture), hdg,
            followMeCb.Checked ? "true" : "false");

myChromiumWebBrowser.ExecuteScriptAsync(js);

我在这里做错了什么?

1 个答案:

答案 0 :(得分:0)

我不知道我的版本是什么,但它是从1月开始的,所以可能是45.更新到最新稳定版本的CefSharp(49.0.0)似乎已经解决了这个问题。