class - 什么是 D 中的类(class)监视器?

标签 class synchronization monitor d

D2.0 类有一个 __monitor类属性“允许访问类对象的监视器”( documentation )。找了一圈,除了this没有找到任何信息一点细节。那么:什么是监视器?为什么一台显示器用于所有synchronized member functions ?是synchronization primitive用于同步类似于Java的成员函数?为什么是 __monitor如果您不应该使用语言 def 中的属性/用例是什么?

最佳答案

监视器是一个延迟初始化的对象,所有同步方法都在其上同步,就像在 Java 中一样。与 Java 不同,D 是一种系统编程语言,它公开了事物如何工作的较低级别的细节,以防万一你需要破解它们,即使这样做通常是一个坏主意。这允许您自定义行为。比如可以自定义一个类的监控对象,或者使用core.sync.mutex与拥有它的类共享一个监视器。

关于class - 什么是 D 中的类(class)监视器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2399752/

相关文章:

Python:当从另一个类中调用初始方法时,类方法调用其他类方法

javascript - 如何使表单提交同步?

multithreading - 最大元素- fatal error :所有goroutine都处于 sleep 状态-死锁

c# - Monitor.Wait 是否确保重新读取字段?

java - 如何在另一个类中调用一个类的 main() 方法?

jquery - 如何在 jQuery 中显示子菜单?

c++ - 二进制 '<' : 'const_Ty' does not define this operator or a conversion to a type acceptable to the predefined operator

php - 使用 PHP 在查询中运行查询时命令不同步

c++ - 将监视器限制在 Linux 中的某个区域

java - Java中对象的监视器是什么意思?为什么要用这个词?