簡體   English   中英

使用Phonegap / WebWorks的Blackberry中的線程過多

[英]Too many threads in Blackberry using Phonegap/WebWorks

我正在使用Cordova / PhoneGap開發Blackberry應用程序。 我正在從服務器獲取多個圖像(地圖圖塊)。 而且,每60秒我就會向其發送一次位置信息。

但是,時不時地獲取圖像或發送信息時,都會出現錯誤。 如果我使用的是模擬器(BB 9930,操作系統7.0.0.318), AppError 104: Too many threads收到AppError 104: Too many threads消息,並且我的應用程序崩潰。 當我在設備(BB 8520,操作系統5.0.0.592)上測試我的應用程序時,不僅該應用程序崩潰,而且使BB重置。

我看過其他發布了相同問題的帖子(例如本篇本篇本篇 )。 但是,使用Cordova / PhoneGap(JavaScript)構建應用程序時,我還沒有找到解決方案。

謝謝!

這可能沒有關系,但是當從BB Bold上的本機應用程序執行大量請求時,我確實遇到了類似的問題。 收到答案后,連接線程未正確關閉。

嘗試以下方法:

  • 更改GET <-> POST。
  • 更改HTTP <-> HTTPS。

如果服務器是您的服務器,請評估更改API以將所有圖像作為一個圖像返回,並在顯示它們時使用偏移/剪切。 您將節省帶寬並減少連接。 您的應用將加載得更快。

例如: http : //www.ibloomstudios.com/articles/misunderstood_css_clip/

我懷疑phoneGap API是否會造成這種情況,因為它基本上是一層。 可能您的模擬器有問題?

由於您還在Blackberry 8520上進行測試,因此建議您在應用程序中的任何時間點將同時運行的最大線程數保持在少於12個

由於您正在使用Phonegap,因此很有可能會為您的應用程序啟動那些線程。

如果設備已連接至系統,則將其連接至Blackberry JDE,然后查看哪些線程處於活動狀態以分析您是否可以重新安排任務的時間。

您是否正在使用AJAX獲取地圖圖塊並將位置發送到服務器?

如果您使用的是AJAX,則可以在JavaScript中保留一個計數器來檢查請求。

另外,如果您嘗試過WebWorkers ,他們將使您能夠在單個線程本身中完成所有這些任務。

如果全部失敗,您還可以開發自定義的Phonegap插件,以使用Java Script接口API進行類似的操作。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM