我有一个简单的空气应用程序部署在服务器上。它所做的只是每5分钟向网页发出一次httpService请求。出于某种原因,它开始时的内存使用率为25MB(任务管理器),并且每天增加大约1MB。我无法弄清楚为什么它会吮吸内存。我有一个应用程序初始化定时器的eventlistener。 我已阅读一些关于内存优化和空气应用程序开发最佳实践的文章。他们说你应该在他们解雇后删除事件监听器。但是如果我这样做了,定时器在触发一次后不会触发任何功能。 任何人都可以分享优化这个想法吗? 这里是我的代码片段:空气应用程序中的内存优化
private var service:HTTPService;
private function init() :void {
service = new HTTPService();
service.method = "GET";
service.url = serviceUrl;
service.addEventListener(ResultEvent.RESULT, httpResult);
service.addEventListener(FaultEvent.FAULT, httpFault);
callhttpService();
pingTimer = new Timer(pingInterval,0);
pingTimer.addEventListener(TimerEvent.TIMER,timer_dothis);
}
private function callhttpService():void {
service.send();
}
private function timer_dothis(evt:TimerEvent):void {
callhttpService();
}
即使应用程序有一些泄漏,如果它们太小,您可以每隔几个小时/天/周重新启动应用程序,而不是修复它们。 – alxx 2011-04-16 19:30:01
看起来不错。结果和错误处理程序如何? – Constantiner 2011-04-16 20:13:08