首页 新闻 搜索 专区 学院

并发处理问题

0
悬赏园豆:30 [已解决问题] 解决于 2018-11-29 10:10

时间比较急,所以希望大家给点经验,实现方法,有代码参考 更加好:

类似微信抢红包程序,用户量是150个,同时抢红包,红包总数50个。

如何解决并发的问题(控制50个人抢到红包):

我的思路是这样,开一个线程,存放一个int iCount=50,大家抢红包过程排队访问这个进程,抢到的话 iCount-=1 ,直到iCount=0,最后关闭进程。 

 

线程,排队??? 怎么搞,多谢!!!!!

众里寻它的主页 众里寻它 | 初学一级 | 园豆:2
提问于:2015-04-02 15:29
< >
分享
最佳答案
0

static int iCount = 50;

bool Get()

{

return Interlocked.Increment(ref iCount) < 50;

}

 

void Reset()

{

    Interlocked.Exchange(ref iCount,0);
}

收获园豆:20
Launcher | 高人七级 |园豆:45045 | 2015-04-02 15:41
其他回答(1)
0

静态变量存储数量,然后加锁。可能会影响请求响应速度,但是感觉在你这个量级,应该问题不大。

收获园豆:10
幻天芒 | 园豆:36662 (高人七级) | 2015-04-02 16:06
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册