gpt4 book ai didi

c# - 检查当前线程是否等于构造对象的线程

转载 作者:行者123 更新时间:2023-11-30 16:21:50 24 4
gpt4 key购买 nike

有没有办法在 someObj.someMethod() 中检查它是否在创建 someObj 的同一线程上执行?如果我搞砸了某些并发约束,这可以让我在以后的调试中省去麻烦。

最佳答案

唯一的方法是在创建线程时存储线程 ID。在 .NET 4.5 上:

readonly int ownerThreadId;
public SomeType() {
ownerThreadId = Environment.CurrentManagedThreadId;
}

然后在 someMethod 中检查同一个术语。

请注意,在其他框架版本上,您可能需要:

ownerThreadId = Thread.CurrentThread.ManagedThreadId;

相反。

关于c# - 检查当前线程是否等于构造对象的线程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12892935/

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