Я новичок в библиотеке сетевых подключений Volley и столкнулся с этой проблемой: java.lang.OutOfMemoryError: сбой pthread_create (стек 1040 КБ): повторите попытку

  class RequestQueueClass constructor(context: Context) {
    companion object {
        @Volatile
        private var INSTANCE: RequestQueueClass? = null

        fun getInstance(context: Context) =
                INSTANCE ?: synchronized(this) {
                    INSTANCE ?: RequestQueueClass(context)
                }
    }

    val requestQueue: RequestQueue by lazy {
        // applicationContext is key, it keeps you from leaking the
        // Activity or BroadcastReceiver if someone passes one in.
        Volley.newRequestQueue(context.applicationContext)

    }

    fun <T> addToRequestQueue(req: Request<T>) {

        requestQueue.add(req)


    }
}

Я объявляю класс обработчика запросов залпового одиночного залпа и обращаюсь к нему везде, но проблема в том, как сделать запрос пустым после вызова внутри ленивого?

0 ответов

Я понимаю, что немного опоздал на этот вопрос, но вот мои 2 цента стоят:

Я вижу, что вы на самом деле не инициализируете свой объект INSTANCE, поэтому каждый раз, когда вы получаете доступ к методу getInstance, вы создаете новую очередь с контекстом приложения, поэтому вы, вероятно, получили ошибку нехватки памяти, поскольку инициализация очереди запросов занимает значительное количество памяти

Другие вопросы по тегам