有什么理由从ThreadStaticAttribute派生子类?

问题描述:

我是令人耳目一新我上的ThreadStaticAttribute C#今天上午内存,下面一行跳出我:有什么理由从ThreadStaticAttribute派生子类?

使用该属性,因为它是,并且不从它派生。

这条线出现在文档为.NET Framework的所有版本,而属性应该只能留待如果它们被设计为属性的层次结构的一部分启封微软自己code analysis on the issue状态。

因此 - ThreadStaticAttribute类别is not nowdoes not appear ever to have beensealed。为什么?

+0

虽然这是一个有趣的问题,但它可能像“开发者负责忘记”这样简单的事情,“它会导致JIT失败”。让我们希望合适的人在这个问题上磕磕绊绊,潜在的回答者必须小一点。对它进行子类化是毫无意义的,只是尝试了它并导致行为失败(因为该字段不再是线程静态的)。 –

有很多东西是99%的时间做坏主意,1%是好主意。

如果你不开发框架本身,但有人不得不在框架中,还有更坏的想法是不好的。

在这种情况下,更有可能有人可能想为框架添加一个特殊情况ThreadStaticAttribute而不是您或我想要的。

即使这可能不太可能,但他们现在应该积极地阻止它,还是让这个可能性开放?

你可能会争辩,但有人决定保持这种可能性。 (或者不是“他们只是忘了”不能排除)。

请注意,如果他们现在确实封印了它,那么应该有一个突破性的改变,如果有谁在派生的属性上取得成功的话。即使已经有人认为他们不应该这样做,即使几乎所有的变化都有一些破坏某些东西的风险,但这仍然是保持现在的一个论点。

+0

“有99%的时间做很糟糕的事情,一个好主意1%。”这就是为什么我问这个问题(虽然我愿意打赌,在这种情况下,1%是多余的多余:) :) – arootbeer

+0

可能非常多。我猜想0%(因此“上面可能不太可能”)。但是让我们说我错了。如果我负责这个决定,并且我完全确定了这个0%,那么我只是搞错了那个达到了0.0001%例外的人。 –