[发明专利]一种多线程屏蔽字查询替换方法有效
申请号: | 202110844719.3 | 申请日: | 2021-07-26 |
公开(公告)号: | CN113434641B | 公开(公告)日: | 2022-10-11 |
发明(设计)人: | 邝剑洪;罗培羽;张永明;李勇;刘效法 | 申请(专利权)人: | 广州四三九九信息科技有限公司 |
主分类号: | G06F16/33 | 分类号: | G06F16/33;G06F16/23;G06F9/46 |
代理公司: | 北京市盛峰律师事务所 11337 | 代理人: | 席小东 |
地址: | 510000 广东*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 多线程 屏蔽 查询 替换 方法 | ||
1.一种多线程屏蔽字查询替换方法,其特征在于,包括以下步骤:
步骤1,确定需要进行屏蔽字处理的内容Content;针对内容Content,确定屏蔽字范围,假设为m个屏蔽字,表示为:屏蔽字Word(1),屏蔽字Word(2),...,屏蔽字Word(m);
步骤2,获取CPU的核心数,为N个,然后启动对应数量的N个线程;
步骤3,按分配算法,将m个屏蔽字分配给N个线程;
步骤4,并行执行N个线程;如果为屏蔽字查询模式,则执行步骤5;如果为屏蔽字查询替换模式,则执行步骤6;
步骤5,屏蔽字查询模式:
步骤5.1,N个线程并行执行;
对于任意线程,表示为线程Pi,以被分配给自身的至少一个屏蔽字为查询关键字,查询所述内容Content,只要在内容Content中查询到存在对应的屏蔽字时,立即向控制模块返回内容Content存在屏蔽字的通知消息;否则,如果对内容Content查询完成时,均未在内容Content中查询到对应的屏蔽字,则向控制模块返回内容Content不存在屏蔽字的通知消息;
步骤5.2,当控制模块接收到任意线程返回的内容Content存在屏蔽字的通知消息时,即得出内容Content存在屏蔽字的结论,同时,立即向N个线程发出停止继续查询内容Content的指令,并结束流程;
如果控制模块接收到所有线程均返回内容Content不存在屏蔽字的通知消息,则得出内容Content不存在屏蔽字的结论,并结束流程;
步骤6,屏蔽字查询替换模式:
步骤6.1,N个线程并行执行;
对于任意线程,表示为线程Pi,以被分配给自身的至少一个屏蔽字为查询关键字,查询所述内容Content,如果在内容Content中没有查询到对应的屏蔽字,则向控制模块返回内容Content不存在屏蔽字的通知消息;如果在内容Content中查询到对应的屏蔽字,则将屏蔽字在内容Content中的位置以及屏蔽字的长度组成二维数组{位置,长度},在查询结束后,将查询到的所有二维数组{位置,长度}发送给控制模块;
步骤6.2,控制模块汇总N个线程返回的二维数组{位置,长度},对各个二维数组{位置,长度}进行分析处理,得到处理后的二维数组{位置,长度};
步骤6.3,对于处理后的每个二维数组{位置,长度},根据位置和长度,在内容Content中定位到对应的字符串,并采用替换算法,将对应的字符串替换为非敏感字符;结束流程;
其中,步骤3中,所述分配算法为平均分配算法,即:将m个屏蔽字平均分配给N个线程;
其中,所述分配算法为:按以下原则,进行屏蔽字的分配:
将各个屏蔽字按屏蔽字的首字符排序;
当一个线程需要被分配多个屏蔽字时,使首字符相同或相近的屏蔽字被分配到同一个线程,同时记录每个线程所分配到的屏蔽字数量;
其中,步骤6.1中,屏蔽字在内容Content中的位置以及屏蔽字的长度是指:
屏蔽字在内容Content中的位置:在内容Content中定位到屏蔽字时,该屏蔽字的首字符在内容Content中的位置,即为屏蔽字在内容Content中的位置;
屏蔽字的长度是指:屏蔽字字符串包括的字符数量;
其中,步骤6.2具体为:
比较各个二维数组{位置,长度},如果二维数组R1{位置C1,长度L1}完全包含二维数组R2{位置C2,长度L2},即:位置C1≤位置C2,位置C1+长度L1≥位置C2+长度L2,则直接删除二维数组R2;
如果二维数组R1{位置C1,长度L1}和二维数组R2{位置C2,长度L2}存在部分重合或正好相邻,即:同时满足以下条件:
条件1:位置C2≥位置C1;
条件2:位置C2≤位置C1+长度L1-1,或者,位置C2-(位置C1+长度L1-1)=1;
条件3:位置C2+长度L2-1≥位置C1+长度L1-1;
则二维数组R1和二维数组R2合并,得到新的二维数组R3{位置C1,长度=位置C2+长度L2-位置C1}。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于广州四三九九信息科技有限公司,未经广州四三九九信息科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110844719.3/1.html,转载请声明来源钻瓜专利网。