0

在asp.net中使用锁定如何防止多个用户单击按钮。我的意思是一次只有一个用户必须点击按钮,不止一个用户不点击按钮。我如何使用锁,任何参考学习。

4

1 回答 1

0

你不能真正阻止不同的用户点击“相同”页面上的“相同”按钮。但是您可以防止多个请求同时在同一个代码块中处于活动状态:

private static object PadLock = new object();
protected void Button1_Click(object sender, EventArgs e)
{
    lock (PadLock)
    {
        // do work here. only one thread can run code in this block at any one time
        // start by verifying if the work was already done. if not do the work
    }
} 

虽然这会序列化对 中代码的访问,但Button1_Click如果不是绝对必要,我建议不要使用 ti。语句阻塞(可能永远)直到前lock一个锁持有者释放锁。

于 2012-07-06T06:33:01.857 回答