gpt4 book ai didi

multithreading - Dart 真的是一种单线程编程语言吗?

转载 作者:行者123 更新时间:2023-12-05 01:54:23 25 4
gpt4 key购买 nike

我对 Dart 还很陌生,并且还在学习中。据我了解,Dart 在不同的隔离区中执行代码。一个 isolate 可以启动另一个 isolate 来执行一些长时间运行的代码。对于每个隔离区,都有一个线程和为其分配的一些内存。这些隔离物就像一堆小虚拟机一样被隔离。

我还从 Dart 文档中了解到 Dart 是一种单线程语言。但是,想想看,每个 isolate 都有自己的线程。如果隔离 A 有线程 t1,隔离 B 有线程 t2,那么 t1 和 t2 不是同一个线程,对吧?

如果t1和t2是同一个线程,那么t1和t2不能同时执行代码,这就很可笑了。所以,t1 和 t2 必须是不同的线程。

如果是这样,为什么我们说 Dart 是一种单线程语言?

最佳答案

是也不是。

"is"的意思是您不必担心锁或互斥。

您列出的意义上的“否”。

Dart 试图通过隔离提供多线程的一些好处,同时避免共享内存多线程的所有问题。

关于multithreading - Dart 真的是一种单线程编程语言吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/70656549/

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