gpt4 book ai didi

c# - 静态类中的 Thread.Sleep()

转载 作者:太空宇宙 更新时间:2023-11-03 21:53:11 25 4
gpt4 key购买 nike

我正在研究一个包含很多项目的解决方案。我有一个托管我的实用程序方法的项目。所有其他项目都在使用此项目方法。

我想知道可以同时从多个项目调用静态方法吗?

此外,在我的一种方法中,我有一个可选参数来执行 Thread.Sleep() 如果一个项目同时调用此方法休眠而另一个项目不休眠,会发生什么情况?

我真的被这个结构搞糊涂了!

最佳答案

I want to know is it ok that a static method gets called from multiple projects maybe at same time?

好吧,这取决于方法的作用。 需要负责确保可以同时从多个线程调用它。 (调用者是否在同一个项目中几乎总是完全不相关的。)

只要您不以危险的方式修改任何共享状态 - 例如添加到 List<T>没有任何同步 - 你应该没问题。不过,这完全取决于您在做什么。

每个调用都是独立的,因为有一组单独的参数和局部变量。现在,如果其中一些参数引用了对其他线程可见的对象,那就另当别论了……但我们无法从您的问题中看出这一点。

注意使用Thread.Sleep这几乎无关紧要。不可否认,如果你有一些同步(例如通过 lock ),那么拥有锁的线程然后 sleep 会非常不愉快......

关于c# - 静态类中的 Thread.Sleep(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13493616/

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