Я синхронизирую огромные данные в chunk, используя метод интерфейса onSuccessCallBack(). Отправляя данные на сервер в следующем подходе, показанном на изображении. Здесь я столкнулся с проблемой StackOverflowException. Как я могу избежать этого.Синхронизация данных с сервером в кусках приводит к StackoverflowException
- Должен ли я осуществлять BroadcastListener и будет вещать из NotifySyncCompleted() метод после каждого цикла completion.Here в OnReceive() метод BroadcastListener я могу вызвать метод NextChunkSync().
- Есть ли способ освободить память стека после каждого цикла перед продолжением.
- Даже после использования AbstractThreadedSyncAdapter Как эта проблема будет решена.
public class SuncManager implements SuccessSyncCallBack{
public SyncNextChunk(){
new WebServiceManager(this).syncToServer();
}
@Override
public void onSuccessForSyncCallBack() {
SyncNextChunk();
}}
синхронизирует данные класса WebServiceManager на сервер получает ответ и сохраняет в базе данных, и уведомляет в onSuccessForSyncCallBack().
Все работает нормально, если итерации меньше. Проблема возникает только при синхронизации огромных данных в куске.
Почему вы вызываете 'new WebServiceManager (это) .syncToServer();' каждый раз вы можете создать экземпляр класса с расширением WebServiceManager и использовать его для вызова метода syncToServer() .. просто частичное решение Я думаю, –