


下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、局部变量有自己的内存空间,相互直接是独立,互补干扰的,所以没必要加锁。而对于成员变量,和全局变量在只读不写的情况下也不要加锁。假如有一个线程对成员变量和全局变量进行写操作是就必须加锁。加锁是一个好习惯。 / / 取得线程数据包 / / 柜号 / 面号 / 层号 / 数据处理包 / 注意加锁,枚举元素的过程中,不可以对队列中元素进行增加或者删除 internal StorageDataThreadFactory GetStroageDataPackage(int cabinetNo, int sideNo, int layerNo) if (this.m_StoragehreadList = n
2、ull | this.m_StoragehreadList.Count = 0) return null; lock (m_StoragehreadList) for (int i = 0; i m_StoragehreadList.Count; i+) if (m_StoragehreadListi.CabinetNo = cabinetNo & m_StoragehreadListi.SideNo = sideNo & m_StoragehreadListi.LayerNo = layerNo) return m_StoragehreadListi; return null; m_Stor
3、agehreadList是一个成员变量,每个托盘创建一个线程。 / / 发送数据 / / 客户端编号 / 数据大小 / 数据包 / 错误码TODO. private int SendData(int clientId, int size, List sendPacketList) if (clientId = 0) return -2; if (sendPacketList = null | sendPacketList.Count = 0 | size = 0) return -3; /if (!m_KAIO.isRun) / return -2; /如果commPowerList个数大于1
4、,说明多个设备连接同一个中位机,即使用一个IP CommunicatePower commPower = FindCommunicatePower(clientId); if (commPower = null) return -1; if (commPower.ClientId = 0) return -4; bool result = false; lock (commPower.SyncRoot)/加锁 foreach (byte sendDataUnit in sendPacketList) if (sendDataUnit != null & sendDataUnit.Count()
5、 0 ? true : false; if (result) if (OnSendMessageCommand != null) OnSendMessageCommand(this, new AcqReceiveMessageStreamEvent(sendDataUnit, DateTime.Now, commPower.IPAdress, commPower.Port); else if (OnSendMessageCommand != null) OnSendMessageCommand(this, new AcqReceiveMessageStreamEvent(sendDataUnit, new DateTime(1970, 1, 1), commPower.IPAdress, commPower.Port); /if (result = false) / / Console.WriteLine(0,); / /Trace.WriteLine(CommonFuncti
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 有效的装修合同(2篇)
- 《餐饮服务与管理》课件-教学课件:餐饮设备用品-布件
- 大数据背景下的企业财务管理与决策优化研究
- 湖南省长沙市雅礼教育集团2024-2025学年高一下学期期中考试数学试卷(含答案)
- 脑梗塞的临床护理
- 贲门肿瘤的临床护理
- 2025合同执行中的违约责任
- 2025全面售后服务合同模板
- 2025电影剧本版权购买及发行权转让合同范本
- 2025年心理咨询师之心理咨询师基础知识提升训练试卷B卷附答案
- 生产运作流程管理规定样本
- 福建省动植物疫病防控专项资金管理办法
- 《高级财务管理(第三版)》配套教学课件
- 离婚协议书免费版大全
- DB32T 4076-2021 生活垃圾焚烧稳定化飞灰填埋处置技术标准
- 分析化学第三章酸碱滴定法课件
- 生产安全事故应急预案(含深井铸造)
- 初中数学课程标准(2021版)
- 工程地质测绘ppt版(共61页)
- 水文地质与工程地质勘察工程地质测绘PPT
- 崩塌易发程度数量化评分表
评论
0/150
提交评论