并发是同时执行多个指令序列。它涉及同时执行多个任务。
Dart使用 Isolates作为并行工作的工具。dart:isolate
是dart的解决方案,以单线程dart代码,并允许应用程序更好地利用现有的硬代码。
隔离,顾名思义,是运行代码的独立单元。在它们之间发送数据的唯一方法是传递消息,就像在客户端和服务器之间传递消息的方式一样。一个 分离 有助于程序充分利用多核微处理器的开箱即用。
例如
让我们举个例子来更好地理解这个概念。
import 'dart:isolate';
void foo(var message){
print('execution from foo ... the message is :${message}');
}
void main(){
Isolate.spawn(foo,'Hello!!');
Isolate.spawn(foo,'Greetings!!');
Isolate.spawn(foo,'Welcome!!');
print('execution from main1');
print('execution from main2');
print('execution from main3');
}