发明名称 | 多线程之间访问共享数据的方法及装置 | ||
摘要 | 本发明提供一种多线程之间访问共享数据的方法及装置,其中的方法包括,在当前的共享数据块中新增控制结构和全局指针变量,全局指针变量通过控制结构指向当前的共享数据块;在更新共享数据时,新建共享数据块,采用修改全局指针变量赋值的方式使全局指针变量指向新建的共享数据块;封装多个线程;使封装的线程通过全局指针变量读取共享数据块中的共享数据。利用本发明提供的多线程之间访问共享数据的方法及装置,通过将转发线程对复杂的共享数据的访问转换成对简单变量的访问,从而代替转发线程以锁机制的方式访问复杂的共享数据,能够有效避免转发线程访问共享数据时引起线程阻塞。 | ||
申请公布号 | CN104216767A | 申请公布日期 | 2014.12.17 |
申请号 | CN201410478347.7 | 申请日期 | 2014.09.18 |
申请人 | 东软集团股份有限公司 | 发明人 | 王海峰;刘申;陈静相 |
分类号 | G06F9/46(2006.01)I | 主分类号 | G06F9/46(2006.01)I |
代理机构 | 北京鸿元知识产权代理有限公司 11327 | 代理人 | 陈英俊 |
主权项 | 一种多线程之间访问共享数据的方法,包括共享数据更新阶段和共享数据读取阶段;其中,所述共享数据更新阶段,包括:在当前的共享数据块中新增控制结构和全局指针变量;其中,所述控制结构用于访问所述共享数据块中的共享数据;所述全局指针变量通过所述控制结构指向当前的共享数据块;在更新共享数据时,新建共享数据块;修改所述全局指针变量的赋值,使所述全局指针变量通过所述控制结构从指向当前的共享数据块变为指向新建的共享数据块;所述共享数据读取阶段,包括:封装多个线程;封装后的多个线程通过所述全局指针变量读取所述全局指针变量指向的共享数据块中的共享数据。 | ||
地址 | 110179 辽宁省沈阳市浑南新区新秀街2号 |