c# - 一次访问一个函数!

标签 c# .net-4.0 mutex

嗨 我有一个用 .Net 4 编写的 c# windows 窗体。在应用程序中,一个计时器事件调用一个函数,一切都很好。但是我已经更新了应用程序,因此它是一个单实例应用程序,当调用第二个实例时,它会触发与第一个实例中的计时器相同的功能。我相信当计时器调用函数并且第二个实例导致第一个实例同时进入相同函数时我遇到了问题。这有意义吗!!!

那么我如何排队调用该函数,以便调用它的第二个进程等到第一个进程退出,如果它在 X 秒内未获得访问权限,则返回错误?我应该在静态函数中执行所有这些操作吗?

因为这可能没有意义,即使对我来说也是如此!如果我在一个项目中有 2 个计时器并且都调用同一个静态函数,我将如何停止同时调用该函数并将它们排队!

我已经开始阅读有关 Mutex 的内容,但不确定我将如何使用它们以及它们是否会超出范围!?

谢谢

最佳答案

在函数中使用lock来保证独占访问。

关于c# - 一次访问一个函数!,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5915780/

相关文章:

linux - 我们什么时候应该使用互斥锁,什么时候应该使用信号量

c# - 如何在Windows Service中实现互斥

c# - wpf如何删除矩形(角)线形式边框

c# - 无法获取给定表达式 C# 指针的地址

c# - 从 RegisterStartupScript 转义字符的正确方法

c# - SetByIndex 等效于 System.Collections.Generic.SortedList

.net - 如何找出.NET 4中 Entity Framework 中的字段最大长度?

c# - 在 C# 中读取 Java UUID(从 DB)

.net-4.0 - 如何使用 Windows SDK 7.1 从命令行运行 msbuild?

database - 在分布式应用程序中同步数据库访问