Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-mvc/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ssis/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
.net 如何防止数据库查询和更新计数错误?_.net_Asp.net Mvc_Concurrency_Signalr - Fatal编程技术网

.net 如何防止数据库查询和更新计数错误?

.net 如何防止数据库查询和更新计数错误?,.net,asp.net-mvc,concurrency,signalr,.net,Asp.net Mvc,Concurrency,Signalr,我面临的问题是: 我有一个使用signalr的MVC web应用程序,它工作得非常好,但是当一些用户(测试了15个用户)同时访问站点时,我仍然有一个问题。有时,计数器反映实际数字,有时不反映实际数字 我在一个类中有一个int变量,当一个新用户请求/play页时,/display页使用signar得到它的计数器递增 为了让用户在不同的时间更新这个变量,我添加了一个 Thread.Sleep(随机) 在递增计数器之前 在这种情况下,有没有更好的方法来处理并发性 如果能举个例子的话,我会很感激的,因为

我面临的问题是:

我有一个使用signalr的MVC web应用程序,它工作得非常好,但是当一些用户(测试了15个用户)同时访问站点时,我仍然有一个问题。有时,计数器反映实际数字,有时不反映实际数字

我在一个类中有一个int变量,当一个新用户请求/play页时,/display页使用signar得到它的计数器递增

为了让用户在不同的时间更新这个变量,我添加了一个

Thread.Sleep(随机)

在递增计数器之前

在这种情况下,有没有更好的方法来处理并发性

如果能举个例子的话,我会很感激的,因为我已经尝试了很多东西,而且我很忙


谢谢

如何定义“int变量”?公共静态int userCount=0;在一些验证之后,我正在/play页面的get方法上刷新它。将Singleton模式应用于类。您应该提供用于广播计数器的代码和触发广播的代码,以便我们可以检查是否有任何错误。Sleep(random);决不是线程(或服务器)的答案。如果共享变量并希望以原子方式递增,请使用Interlocked.increment