我想在30秒后定期将日志发送到服务器。为了提高性能,我想通过使用计算函数来使用不同的线程。但Timer在计算中不起作用。有什么建议可以在flutter中周期性地在不同的线程中执行任务吗?
您可以直接使用Isolate
。这就是compute
在幕后所做的。
但是,我不认为向服务器发送信息会过多地阻塞UI线程。
最重要的是,如果您使用应用程序状态来确定日志消息,我只会将其保留在主Isolate
中。
我可能会将(Material|Widget|Cupertino(应用程序封装在StatefulWidget中,并在initState
中添加Timer.periodic
。
您还必须注意,与Isolate
通信意味着您的消息必须复制到其内存中。而向服务器发送HTTP请求通常是async
和非ui阻塞。