分享web开发知识

注册/登录|最近发布|今日推荐

主页 IT知识网页技术软件开发前端开发代码编程运营维护技术分享教程案例
当前位置:首页 > 网页技术

asp.net mvc 设置一个action的访问人数,达到上线排队

发布时间:2023-09-06 02:34责任编辑:彭小芳关键词:暂无标签
/// <summary> ???????/// 1,对访问此action的用户进行异步处理,然后将此异步加入到全局的list当中, ???????/// 再等待异步处理完成,如果完成,将此异步操作从全局的list中删除,给前端返回处理结果 ???????/// 2,设置全局list要存放的处理人数 ???????/// 3,如果达到上限,直接给用户返回请排队,然后全端排队等待,等待五分钟之后接着提交 ???????/// </summary> ???????/// <returns></returns> ???????public string Index() ???????{ ???????????TaskFactory taskFactory = new TaskFactory(); ???????????if (EBS.Common.Common.ListTask.Count > 1000) ???????????{ ???????????????return "请排队!"; ???????????} ???????????Task task = taskFactory.StartNew(() => ???????????{ ???????????????//do it ???????????????Thread.Sleep(1000*60); ???????????}); ???????????lock (EBS.Common.Common.ListTask) ???????????{ ???????????????EBS.Common.Common.ListTask.Add(task); ???????????} ???????????if (!task.IsCompleted) ???????????????task.Wait(); ???????????lock (EBS.Common.Common.ListTask) ???????????{ ???????????????if(EBS.Common.Common.ListTask.Exists(x=>x==task)) ???????????????????EBS.Common.Common.ListTask.Remove(task); ???????????} ???????????return "完成!"; ???????????????????}

asp.net mvc 设置一个action的访问人数,达到上线排队

原文地址:https://www.cnblogs.com/strayheart/p/10497416.html

知识推荐

我的编程学习网——分享web前端后端开发技术知识。 垃圾信息处理邮箱 tousu563@163.com 网站地图
icp备案号 闽ICP备2023006418号-8 不良信息举报平台 互联网安全管理备案 Copyright 2023 www.wodecom.cn All Rights Reserved