gpt4 book ai didi

flutter - 计算 : Illegal argument in isolate message : (object is a closure - Function '' :. )

转载 作者:行者123 更新时间:2023-12-04 08:45:12 26 4
gpt4 key购买 nike

我正在尝试按如下方式使用计算解压缩文件。

class FileDownloader{

void downloadCompleteZip(Function(double) listenerFunction){
Map<String, dynamic> map = {
'fileRoot': localPath,
"filePath": completeZipLocalPath,
"listener": listenerFunction,
"unzipPerc": unzipPerc
};

await compute(unzipCompleteZipToDisk, map);
}
}
void unzipCompleteZipToDisk(Map<String, dynamic> params) async {}

当我调用 downloadCompleteZip 函数时,出现以下错误:

Invalid argument(s): Illegal argument in isolate message : (object isa closure - Function '':.)

我在 map 中的变量类型是 String 和 Function。我认为问题在于我试图在此处的 map 中传递一个函数:

"listener": listenerFunction,

我的downloadCompleteZip 函数更长,为了示例我简化了它。我确实需要传递 listener 键,因为它会发送消息来更新 UI。我该如何解决这个函数无法在计算内部的映射中传递的问题?

此外,请不要建议第三方库解决方案。我看到像 this can help. 这样的库我正在努力使第 3 方依赖性尽可能低。

最佳答案

我遇到了同样的问题,解决方案是不传递任何函数,也不传递具有函数作为属性的对象。那么它应该可以工作。

关于 flutter - 计算 : Illegal argument in isolate message : (object is a closure - Function '<anonymous closure>' :. ),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64360231/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com