一个无法解释的模式

时间:2010-06-17 15:01:27

标签: design-patterns multithreading

目前我正在读一些由另一个人写的文档,我很困惑。其中很多是关于在编写本文档的项目中实现的多线程同步。

在这个项目中,这个程序员实现了一些类来控制整个应用程序中使用的关键部分。

它只是一堆类,它们跟踪哪个线程具有哪个关键部分,并且是本机Win32 CRITICAL_SECTION结构的包装。

然后是以-Visit结尾的类,它们实际上在应用程序中使用,并将在它进入之前检查一个临界区是否已经进入了一个线程。

这个程序员称之为'采集设计模式',我想知道是否存在这样的模式,并且可能会被称为其他程序员所谓的其他东西,因为我无法在任何地方找到此名称下的模式?

我知道我没有详细说明,但这与我可以进入的细节差不多。

1 个答案:

答案 0 :(得分:0)

当我实现这样的类时,其目的如下:

  • 包装O / S基元(例如关键部分)
  • 记录使用
  • 通过跟踪哪些线程拥有哪些锁定来检测deadly embrace,并在获取每个锁之前测试致命的拥抱
  • 通过跟踪线程获取锁定的顺序(例如lockA后跟lockB)来预测并因此避免致命拥抱,记住这是“通常序列”,然后警告是否线程曾经获取锁定非通常序列(例如lockB后跟lockA)。