Я создаю некоторый код для запроса нескольких данных из базы данных, чтобы иметь расписание в моем интерфейсе, вкл.несколько запросов к БД.
Проблема в том, что с одним конкретным запросом где.Я использую swiftKuery и DispatchGroups, я получаю иногда, но не всегда сообщение об ошибке в моем XCode.Это не может быть восстановлено другим запросом, но иногда это происходит.
вот фрагмент моего кода.
var profWorkDaysBreak = [time_workbreaks]()
let groupServiceWorkDayBreaks = DispatchGroup()
...
///WorkdaysBreakENTER AsyncCall
//UnreliableCode ?
profWorkDays.forEach {workDay in
groupServiceWorkDayBreaks.enter()
time_workbreaks.getAll(weekDayId: workDay.id) { results, error in
if let error = error {
print(error)
}
if let results = results {
profWorkDaysBreak.append(contentsOf: results) // The error happens here !
}
groupServiceWorkDayBreaks.leave()
}
}
...
groupServiceWorkDayBreaks.wait()
Результаты и переменные profWorkDaysBreak одинаковы, иногда я получаю сообщение:
Неустранимая ошибка: выделено недостаточно местакопировать содержимое массива. Это приводит к остановке выполнения.
Я предполагаю, что, возможно, цикл может иногда завершать более раннее выполнение в DispatchGroup ???но это единственное, что я думаю, как идея ....