目前我保持一個靜態的凌空請求隊列如下所述:應該維護多少排氣式排隊隊列?
Instantiating core Volley objects
private static RequestQueue mReqQueue;
如果有一個和每個應用程序只有一個靜態的請求隊列?有多於一個的危害是什麼?例如,如果我想要一個請求隊列來處理Twitter請求,該怎麼辦。另一個用於認證,圖像檢索等其他一切。
目前我保持一個靜態的凌空請求隊列如下所述:應該維護多少排氣式排隊隊列?
Instantiating core Volley objects
private static RequestQueue mReqQueue;
如果有一個和每個應用程序只有一個靜態的請求隊列?有多於一個的危害是什麼?例如,如果我想要一個請求隊列來處理Twitter請求,該怎麼辦。另一個用於認證,圖像檢索等其他一切。
我認爲Ficus Kirkpatrick在his presentation on Volley的某處說最好只有一個RequestQueue
。
如果你的大部分活動,服務和接收者都使用了Volley,並且你在它們之間做了很多切換,那麼在Application
對象中定義一個單身人士RequestQueue
是很有意義的,這樣你就不必實例化新的RequestQueue
在每個acticity /服務/接收器onCreate
。但是,如果你有很多活動,並且在一個請求中只使用Volley中的一個,那麼你可能會更好地定義RequestQueue
,或者在Activity
中定義RequestQueue
,或者它會在你不使用它。這不應該傷害功能,但可能會傷害記憶方面。
在凌空用戶羣,榕說:
RequestQueues相當便宜(大多隻是線程)。我們在應用程序中使用了多個分隔緩存。
這告訴我們,如果您需要單獨的緩存,則使用多個RequestQueues
也是有效的用例。
但是如果您切換到另一個活動,並且想要暫停先前活動中的請求,請先加載新的請求? – virsir
這是違反活動應該做的事情。如果您希望能夠取消跨活動的正在進行的下載,則應該在['Service'](http://developer.android.com/reference/android/app/Service.html)中執行下載。 – Maarten