android - 在我用大量数据发出大量请求后,Volley 给我内存不足异常

标签 android out-of-memory android-volley

我有一个页面查看器,在每个页面中我都有 ListView ,这个 ListView 将有 10 条使用网络服务的记录,所以页面查看器使用网络服务的三个调用来填充三个页面(当前,左侧和正确的页面)但是在我进行了大量滑动之后我得到了这个异常:

java.lang.OutOfMemoryError: pthread_create (stack size 16384 bytes) failed: Try again
            at java.lang.VMThread.create(Native Method)
            at java.lang.Thread.start(Thread.java:1029)
            at com.android.volley.RequestQueue.start(RequestQueue.java:142)
            at com.android.volley.toolbox.Volley.newRequestQueue(Volley.java:66)
            at com.android.volley.toolbox.Volley.newRequestQueue(Volley.java:78)
            at com.imona.android.entities.Record.<init>(Record.java:57)
            at com.imona.android.webservices.OperationalDataRest$1.onResponse(OperationalDataRest.java:109)
            at com.imona.android.webservices.OperationalDataRest$1.onResponse(OperationalDataRest.java:85)
            at com.android.volley.toolbox.JsonRequest.deliverResponse(JsonRequest.java:65)
            at com.android.volley.ExecutorDelivery$ResponseDeliveryRunnable.run(ExecutorDelivery.java:99)
            at android.os.Handler.handleCallback(Handler.java:733)
            at android.os.Handler.dispatchMessage(Handler.java:95)
            at android.os.Looper.loop(Looper.java:136)
            at android.app.ActivityThread.main(ActivityThread.java:5017)
            at java.lang.reflect.Method.invokeNative(Native Method)
            at java.lang.reflect.Method.invoke(Method.java:515)
            at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:779)
            at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:595)
            at dalvik.system.NativeStart.main(Native Method) 

最佳答案

如何初始化您的RequestQueue?我怀疑您正在为每个选项卡创建 RequestQueue。如果是这种情况,请将您的程序更改为使用所有选项卡中 RequestQueue 的一个公共(public)实例。您需要将其初始化并保留在您的 Activity 中,并从每个选项卡向其添加请求。

关于android - 在我用大量数据发出大量请求后,Volley 给我内存不足异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21475129/

相关文章:

java - Android 5 中的图像内存不足

c++ - 创建一个越界数组

java.lang.NoSuchMethodError : No virtual method setTag(Ljava/lang/Object;)

android - 在 Android 应用程序和服务之间交换 unicode 字符

android - 既然 apache 的 MultipartEntityBuilder 已被弃用,使用 Volley 库上传图像或文件的最佳方式是什么?

android - 启动通用 Activity 并等待 AsyncTask 完成

android - "android.util.AndroidRuntimeException: requestFeature() must be called before adding content"on showDialog(dialogId)

android - 如何解决在android中显示图像时内存不足的问题?

java - Android Studio - OpenJDK 1.8 与 Oracle JDK

android - 使用 Picasso 将图像放入 Drawable