Raj*_*san 4 dart dart-isolates
对我来说,DART Isolate看起来像一个带有不同术语的线程(Java/C#).在哪个方面,Isolate与Thread不同?
线程使用共享内存,隔离不使用.
例如,Java/C#中的以下伪代码
class MyClass {
static int count = 0;
}
// Thread 1:
MyClass.count++;
print(MyClass.count); // 1;
// Thread 2:
MyClass.count++;
print(MyClass.count); // 2;
Run Code Online (Sandbox Code Playgroud)
这也存在两个线程同时修改共享内存的风险.
而在达特,
class MyClass {
static int count = 0;
}
// Isolate 1:
MyClass.count++;
print(MyClass.count); // 1;
// Isolate 2:
MyClass.count++;
print(MyClass.count); // 1;
Run Code Online (Sandbox Code Playgroud)
分离株彼此隔离.它们之间进行通信的唯一方法是传递消息.一个隔离区可以监听另一个隔离区的回调.
| 归档时间: |
|
| 查看次数: |
567 次 |
| 最近记录: |