gpt4 book ai didi

c# - 代码契约检查线程亲和性——好主意?

转载 作者:行者123 更新时间:2023-11-30 15:45:06 28 4
gpt4 key购买 nike

我正在尝试学习代码契约并了解它们的用处。

我有一个 WPF 应用程序,因此很多代码注定要在 UI 线程上独占运行。相当多的实用程序类期望仅从 UI 线程调用。

在我的代码中加入这些是个好主意吗?为什么是/不是?

Contract.Requires(Thread.CurrentThread == Application.Current.Dispatcher.Thread);

静态检查器是否能够可靠地检查这些?

感谢任何输入!

最佳答案

您的契约(Contract)应该与您的代码有关。 Dispatcher 和 Thread 类不是您的,它们不受自己的契约(Contract)保护。

所以不,静态检查器根本无法检查它。

运行时检查可能有效,但它们对已经内置到库中的调试检查几乎没有帮助。

关于c# - 代码契约检查线程亲和性——好主意?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5528766/

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