之间的性能区别是什么?
var completer = new Completer<String>();
var future = completer.future;
completer.complete("value");
return future;
和:
var future = new Future<String>.immediate("value");
return future;
最佳答案
希望不久Future.immediate
将在引擎盖下使用Completer使其异步,因此现在那里的任何性能差异都将消失。
即使在今天,任何这样的性能差异也应该非常小。 Completer和Future中的所有代码都是同步且较小的,因此开销包括完成器的分配和一些方法调用。那应该非常非常快。
结果:坚持使用Completer。
关于performance - 在dart中,创建一个Future,完成它并返回它的效率是否比立即创建Future的效率低?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13328353/