возможность использования. Наткнулся на непонятнле поведение. Если я отправляю данные которые я вставил втупую внутри фунции - то все работает и в
Isolate.apawn(_fetchDataIsolate....) ошибок нет
Future<void> _fetchDataIsolate(SendPort sendPort) async{
sendPort.send([
AnaliticsPeriodData(monthX: 565656, y1: 556, y2: 56.4545454545, y3: 56, y4: 56, y5: 56, y6: 34, y7: 34),
AnaliticsPeriodData(monthX: 565656, y1: 556, y2: 56, y3: 56, y4: 56, y5: 56, y6: 34, y7: 34),
AnaliticsPeriodData(monthX: 565656, y1: 556, y2: 56, y3: 56, y4: 56, y5: 56, y6: 34, y7: 34),
]);
}
Но если я получаю дату и другого места - например из сервиса
Future<void> _fetchDataIsolate(SendPort sendPort) async{
final data = analiticsService.makeSummPeriodAnalitics(smsBodies);
sendPort.send([
...data,
]);
}
Прилетает ошибка что дата НЕВАЛИДНА и что в SEND что то не так. Что за Х ребята?
дата должна быть серриализуема
Если изоляты разделяют одинаковый код (например, созданы с использованием Isolate.spawn), тогда почти любой объект может быть передан, за исключением некоторых специальных случаев (например, объекты с нативными ресурсами) - в моем случае - List<AnaliticsPeriodData> и в первом случае я его вставляю втупую ручками - Все супер) Слушает и отрабатывает Во втором же случае получаю этот список посредством обработки функции и Изодят падает
Обсуждают сегодня