上传程序Dictionary 字典 哈希--多读一写锁ReaderWriterLock

//上传程序Dictionary 字典 哈希
/// <summary>
/// 车辆控制信息哈斯表,Key是终端号,Value是车辆信息控制对象
/// </summary>
private Dictionary<string, MsgObject> _MsgObjectHashMap = new Dictionary<string, MsgObject>();
public Dictionary<string, MsgObject> MsgObjectHashMap { get { return _MsgObjectHashMap; } }
//用法
//判断是否包含
if (LogicManager.MsgObjectHashMap.ContainsKey(key))
{
MsgObject controlObject = LogicManager.MsgObjectHashMap[key];
//删除
LogicManager.MsgObjectHashMap.Remove(key);//处理之后移除
//添加
if (!LogicManager.MsgObjectHashMap.ContainsKey(msgObjeKey))
{
LogicManager.MsgObjectHashMap.Add(msgObjeKey, controlObject);
}
-----------
/// <summary>
/// 连接列表
/// </summary>
public Dictionary<string, CAPacket> CaSessionTable = new Dictionary<string, CAPacket>();

//读写锁
/// <summary>
/// 车辆控制信息哈斯表锁
/// </summary>
private ReaderWriterLock _MsgObjectHashMapLock = new ReaderWriterLock();
public ReaderWriterLock MsgObjectHashMapLock { get { return _MsgObjectHashMapLock; } }
//用法:
LogicManager.DriverInfoHashMapLock.AcquireReaderLock(5000);//设定5000毫秒 获取读锁
if (LogicManager.DriverInfoHashMapLock.IsReaderLockHeld) //判断一下在释放锁
{
LogicManager.DriverInfoHashMapLock.ReleaseLock(); //或.ReleaseReaderLock();
}
//更新驾驶员信息
LogicManager.DriverInfoHashMapLock.AcquireWriterLock(5000);
if (LogicManager.DriverInfoHashMapLock.IsWriterLockHeld)
{
LogicManager.DriverInfoHashMapLock.ReleaseWriterLock();
}
时间: 2024-10-23 00:28:19

上传程序Dictionary 字典 哈希--多读一写锁ReaderWriterLock的相关文章

PHP图片上传程序(完整版)

从PHP100上搜刮来的,功能很强大.几乎考虑到了每个细节,与大家分享!~~~ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <?php /****************************************************************************** 参数说明: $max_file_size : 上传文件大小限

ios APP 在 waiting for review时重新上传程序

点击details进入后在link点击binary details,进入之后点击右上角reject this binary,然后就可以重新上传了.ios APP 在 waiting for review时重新上传程序

flash多文件上传程序代码

原文:flash多文件上传程序代码 源代码下载地址:http://www.zuidaima.com/share/1550463485168640.htm

jsp开发无刷新文件上传程序代码

原文:jsp开发无刷新文件上传程序代码 源代码下载地址:http://www.zuidaima.com/share/1550463484660736.htm 无刷新文件上传程序代码 源代码截图

基于networkComms通信框架的文件上传程序(包含全部源码)

本来想要研究下基于networkcomms的xamarin上的安卓开发,可是装了vs2015电脑太卡,暂时先放一下.把以前的程序翻出来改一下,分享给大家. networkcomms v3与 v2 用法上差别不大,本文程序基于开源的networkcomms2.31版本(gplv3协议) 程序基于.net2.0   开发工具vs2010 由于本人也还在学习中,不足之处请见谅,程序的性能大家可以自己测试下. 程序效果图: 服务器端: 客户端: (去除了数据库,用户名密码随便输入即可) 上传的文件,默认

IDEA中下载与上传程序

方式有很多,在这里大体写一下在工作中,最顺手的方式. 一:拉代码 1.说明 在第一次开始项目的时候,需要在git上拉一下代码. 主要有两种方式: 使用工具,TotoriseGit 使用IDEA 2.方式一,使用TotoriseGit 在一个文件夹下右键. 出现下面页面: 选择ok,然后,项目就在本地了. 使用IDEA的open方式可以导入项目 3.方式二,使用IDEA 在首页面: 然后,填写git地址 一直使用下一步: · 然后项目打开了,需要根据分支进行切换: 二:更新代码 1.说明 这个更新

IOS 发布程序(打包上传)

? 发布程序的主要步骤 登录开发者主页 生成cer证书:cer是一个跟电脑相关联的证书文件,让电脑具备发布程序的功能 添加App ID:发布哪些app? 生成MobileProvision文件:结合2.3生成一个手机规定文件 导入cer.MobileProvision文件 填写应用信息 配置证书 打包上传程序 ? 最终会得到2个文件 ? Cer文件:让电脑具备发布程序的功能 ? MobileProvision文件:哪些app.哪台电脑需要发布程序? 发布程序的步骤01-登录开发者主页 ? 登录开

艾恩ASP无组件上传类(上传组件)说明文档(from www.sysoft.cc)

艾恩ASP无组件上传类(上传组件)说明文档2010-1-18 By Anlige一.简介自从接触ASP就开始接触上传,看过一些上传类,但是总感觉封装的还是不够简单,因此自己尝试写一个能够用最少最简单的代码实现各种上传方式的上传类.在学校期间就开始写,一点点的完善.优化,到现在的版本,现在的版本能适应各种上传方式.上传类的主要的功能如下:1.自由设置最大上传大小.单文件最大上传大小2.自由设置允许上传的文件类型3.可设置文本的编码,以适应各种上传环境4.内置进度条,a用户可选择开启和关闭5.多种错

JavaEE系列之(二)commons-fileupload实现文件上传、下载

一.文件上传概述 实现Web开发中的文件上传功能,需要两步操作: 1.在Web页面中添加上传输入项 <form action="#" method="post" enctype="multipart/form-data"> <input type="file" name="filename1"/><br> <input type="file" n