预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10

亲,该文档总共13页,到这已经超出免费预览范围,如果喜欢就直接下载吧~

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

(19)中华人民共和国国家知识产权局(12)发明专利申请(10)申请公布号CN110837422A(43)申请公布日2020.02.25(21)申请号201910968196.6(22)申请日2019.10.12(71)申请人上海眼控科技股份有限公司地址200032上海市徐汇区中山南二路107号1幢20层I单元(72)发明人周康明魏晓东(74)专利代理机构上海光华专利事务所(普通合伙)31219代理人倪静(51)Int.Cl.G06F9/52(2006.01)权利要求书1页说明书8页附图3页(54)发明名称多线程访问方法、系统、电子终端以及储存介质(57)摘要本申请提供一种多线程访问方法、系统、电子终端以及储存介质,包括:接收当前待访问线程对共享资源的操作请求;在所述共享资源的条件变量为访问状态的情况下,允许所述当前待访问线程对所述共享资源进行操作,并锁定所述共享资源。解决了当一个线程访问公共队列的某个数据时,也有其他线程去访问该队列,有可能会出现数据污染或者脏数据,并且对于上锁资源时,当其中一个函数返回的是保护数据的指针或引用时,会破坏对数据的保护的问题,本申请对数据进行保护,其他线程不能进行访问直到该线程读写完,其他线程才可使用;这样不会出现数据不一致或者数据污染,确保互斥量能锁住任何对保护数据的访问,并且不留后门,不会让任何代码脱离保护。CN110837422ACN110837422A权利要求书1/1页1.一种多线程访问方法,其特征在于,包括:接收当前待访问线程对共享资源的操作请求;在所述共享资源的条件变量为访问状态的情况下,允许所述当前待访问线程对所述共享资源进行操作,并锁定所述共享资源。2.根据权利要求1所述的多线程访问方法,其特征在于,包括:在所述当前待访问线程完成对共享资源的操作后,解锁所述共享资源,并释放所述共享资源的访问权。3.根据权利要求1所述的多线程访问方法,其特征在于,所述方法还包括:在所述当前待访问线程完成对共享资源的操作后,解锁所述共享资源,并令所述当前待访问线程条件变量改变,并且用当前待访问线程条件变量改变通知位于候补队列中的下一待访问线程。4.根据权利要求2所述的多线程访问方法,其特征在于,释放所述共享资源的访问权的方式包括:令所述条件变量的状态变为访问状态。5.根据权利要求1所述的多线程访问方法,其特征在于,在所述共享资源的条件变量不是访问状态的情况下,将所述当前待访问线程置于候补队列。6.一种多线程访问系统,其特征在于,包括:处理模块,用于接收当前待访问线程对共享资源的操作请求,以及用于在所述共享资源的条件变量为访问状态的情况下,允许所述当前待访问线程对所述共享资源进行操作,并锁定所述共享资源。7.根据权利要求6所述的多线程访问系统,其特征在于,所述处理模块包括加锁解锁模块,其用于对所述共享资源进行加锁操作和/或解锁操作。8.根据权利要求6所述的多线程访问系统,其特征在于,所述处理模块包括条件变量模块,其用于通过改变自身状态来授权不同的线程进行共享资源的访问。9.一种电子终端,其特征在于,包括:存储器,用于存储计算机程序;处理器,用于运行所述计算机程序,以执行如权利要求1至5中任一项所述的多线程访问方法。10.一种计算机存储介质,其特征在于,存储有计算机程序,所述计算机程序运行时实现如权利要求1至5中任一项所述的多线程访问方法。2CN110837422A说明书1/8页多线程访问方法、系统、电子终端以及储存介质技术领域[0001]本申请涉及一种多线程处理领域,特别是涉及一种多线程访问方法、系统、电子终端以及储存介质。背景技术[0002]通常我们启用多线程都是同时处理关键资源,会经常碰到资源竞争的情况,如果多个线程同时访问同个资源,会造成未知的错误。当线程在访问共享数据的时候,必须定一些规矩,用来限定线程可访问的数据位。还有,一个线程更新了共享数据,需要对其他线程进行通知。从易用性的角度,同一进程中的多个线程进行数据共享,有利有弊。错误的共享数据使用是产生并发bug的一个主要原因。[0003]当涉及到共享数据时,问题很可能是因为共享数据修改所导致。如果共享数据是只读的,那么只读操作不会影响到数据,更不会涉及对数据的修改,所以所有线程都会获得同样的数据。但是,当一个或多个线程要修改共享数据时,就会产生很多麻烦。这种情况下,就必须小心谨慎,才能确保一切所有线程都工作正常。不要让任何代码脱离保护。在正常情况下,我们都能会小心地使关键资源在我们的控制之下,良好的运行,但在一些意外的时候,可能会跳出我们的控制。发明内容[0004][0005]鉴于以上所述现有技术的缺点,本申请的目的在于提供一种多线程访问方法、系统、电子终端以及储存介质,用于解决现有技术中当一个线程访问公共队列的某个数据时,也有其他线程去访