Size: a a a

iOS Developers — русскоговорящее сообщество

2021 January 19

DY

Danil Y. in iOS Developers — русскоговорящее сообщество
Denis Kim
действительно тут все прозрачно. уточните что у вас за модели и что у них по equatable протоколу
Обычные immutable модельки, Equatable реализован, проблема не в этом, проверял
источник

DK

Denis Kim in iOS Developers — русскоговорящее сообщество
Denis Kim
действительно тут все прозрачно. уточните что у вас за модели и что у них по equatable протоколу
кроме того, следует убедиться что массив данных не меняется нигде в обход методов обновлений. то есть что перед обновлением он соответствует текущему состоянию таблицы
источник

AK

Anton K. in iOS Developers — русскоговорящее сообщество
Вовка
ну ему не релоад дату нужно дернуть, а точеные изменения применить к табличке.
я понимаю. я про то, что делаешь beginUpdate, вносишь изменения и потом endUpdate, это как транзакции
источник

В

Вовка in iOS Developers — русскоговорящее сообщество
Anton K.
я понимаю. я про то, что делаешь beginUpdate, вносишь изменения и потом endUpdate, это как транзакции
А, я думал ты про “оберни в это релоад дату”
источник

DK

Denis Kim in iOS Developers — русскоговорящее сообщество
Anton K.
я понимаю. я про то, что делаешь beginUpdate, вносишь изменения и потом endUpdate, это как транзакции
ну если у тебя на входе массив который был и который нужно получить, то это не самая простая задача
источник

DY

Danil Y. in iOS Developers — русскоговорящее сообщество
Denis Kim
кроме того, следует убедиться что массив данных не меняется нигде в обход методов обновлений. то есть что перед обновлением он соответствует текущему состоянию таблицы
У меня unidirectional архитектура и абсолютно всё иммутабельное, ничего нигде точно не меняется) Грешил только на то, что метод обновления вызывается хоть и на мейн потоке, но асинхронно. Пробовал для надежности сделать очередь или примитивные мьютексы, ничего не изменилось, да и по логам/дебаггеру всё норм, всё идёт последовательно, ошибка просто возникает сама по себе рандомно
источник

DK

Denis Kim in iOS Developers — русскоговорящее сообщество
чудес не бывает, где-то ведь эта ошибка есть
источник

DK

Denis Kim in iOS Developers — русскоговорящее сообщество
ну что можно сказать без кода - удачи в поисках
источник

DY

Danil Y. in iOS Developers — русскоговорящее сообщество
Симулятор не может мне палки в колёса вставлять? 🤔 Как упомянал выше, на симуляторе iOS 12 ошибка воспроизводится раз в 20 чаще, чем на симуляторе iOS 14
источник

DY

Danil Y. in iOS Developers — русскоговорящее сообщество
А на реальном устройстве вообще не проверял..
источник

AK

Anton K. in iOS Developers — русскоговорящее сообщество
Denis Kim
ну если у тебя на входе массив который был и который нужно получить, то это не самая простая задача
смотря что именно и как меняет этот массив
источник

DK

Denis Kim in iOS Developers — русскоговорящее сообщество
ну тут последовательности изменений нет, есть 2 состояния просто
источник

AK

Anton K. in iOS Developers — русскоговорящее сообщество
Danil Y.
У меня unidirectional архитектура и абсолютно всё иммутабельное, ничего нигде точно не меняется) Грешил только на то, что метод обновления вызывается хоть и на мейн потоке, но асинхронно. Пробовал для надежности сделать очередь или примитивные мьютексы, ничего не изменилось, да и по логам/дебаггеру всё норм, всё идёт последовательно, ошибка просто возникает сама по себе рандомно
а массив меняется всегда строго по одной операции за раз? или может быть одновременно что-то добавиться и что-то удалиться?
источник

DY

Danil Y. in iOS Developers — русскоговорящее сообщество
Anton K.
а массив меняется всегда строго по одной операции за раз? или может быть одновременно что-то добавиться и что-то удалиться?
Может что-то добавиться и что-то удалиться, да
источник

AK

Anton K. in iOS Developers — русскоговорящее сообщество
тогда первым делом я бы попробовал сделать через beginUpdate, endUpdate
источник

AK

Anton K. in iOS Developers — русскоговорящее сообщество
Danil Y.
Может что-то добавиться и что-то удалиться, да
а кто меняет данные?
источник

NK

Nameless King in iOS Developers — русскоговорящее сообщество
Anton K.
а кто меняет данные?
ООПшники?)
источник

DY

Danil Y. in iOS Developers — русскоговорящее сообщество
Данные всегда приходят новые, их никто не меняет
источник

AK

Anton K. in iOS Developers — русскоговорящее сообщество
с сервера?
источник

AK

Anton K. in iOS Developers — русскоговорящее сообщество
Nameless King
ООПшники?)
я тебя вычислил по ООПшнику
источник