[发明专利]一种面向多终端无线通信的Socket线程池设计方法在审

专利信息
申请号: 201710076545.4 申请日: 2017-02-13
公开(公告)号: CN106997307A 公开(公告)日: 2017-08-01
发明(设计)人: 严军;倪清荣;周夏杰 申请(专利权)人: 上海大学;上海格州电子股份有限公司
主分类号: G06F9/48 分类号: G06F9/48;G06F9/50;H04L29/06;H04L29/08;H04L1/22
代理公司: 上海上大专利事务所(普通合伙)31205 代理人: 陆聪明
地址: 200444*** 国省代码: 上海;31
权利要求书: 查看更多 说明书: 查看更多
摘要: 发明公开了一种面向多终端无线通信的Socket线程池设计方法,保证多手持终端与服务器能够同时进行连续高效的通信。本方法包括多终端无线通信过程、线程池框架设计、针对多终端无线通信的线程异常处理机制三部分。多终端无线通信过程针对多客户端同时发起请求,服务器采取多线程工作模式,保证与多客户端的连续有效的通信。线程池框架设计过程针对线程之间的切换造成的资源浪费,为了保证有效的利用服务器的内存资源,合理的设计了包括主线程、管理线程、任务线程和辅助线程的线程池。针对多终端无线通信的线程异常处理机制主要是为了应对线程异常,针对不同的异常情况采取相应的解决措施。
搜索关键词: 一种 面向 终端 无线通信 socket 线程 设计 方法
【主权项】:
一种面向多终端无线通信的Socket线程池设计方法,包含多终端无线通信过程、线程池框架设计、针对多终端无线通信的线程异常处理机制三部分,其特征在于,具体步骤为:a. 多终端无线通信过程的实现步骤如下:(a‑1)服务器端的主线程监听特定端口;(a‑2)客户端发起连接请求,与服务器建立Socket连接;(a‑3)服务器端开辟一个独立的线程,进行每对连接的数据读写和数据处理操作,将服务器上的这个独立线程叫做任务线程;(a‑4)主线程一旦启动了任务线程,就立即去处理下一个客户端的连接,尽量让每个客户端在最短的时间内得到响应;(a‑5)每个任务线程启动后,均独立于对应的客户端通信,并按照协议要求处理请求,回复结果,完成任务后关闭连接,结束线程;(a‑6)服务器端持续处于监听状态;b.线程池框架设计:(b‑1)根据服务器端的CPU数以及工作所需的线程数配置线程池的容量;(b‑2)线程池中主要分为主线程、管理线程、任务线程和辅线程;(b‑3)主线程负责初始化线程池对象,反复侦听服务器端口,对每个客户端的连接都创建任务线程,并将它们添加到线程池的任务队列中,并通知唤醒线程池管理线程;(b‑4)管理线程负责线程池中线程的管理,在构建线程池对象时,一次性创建并启动,扫描任务队列,如果有任务,就取走一个,启动该任务线程,并让线程池的工作任务数加1,如果没有任务,则阻塞;(b‑5)任务线程独立完成一次连接任务的线程,由主线程创建并被加入到任务队列中,被管理线程取出并启动,自己完成通信、处理、存储等任务后,让线程池的工作任务数减1,然后结束自己;(b‑6)任务线程出现异常时,向辅线程进行异常反馈,辅线程根据反馈的内容,提出相应的异常处理方案;(b‑7)每个任务一开始并不启动,等待管理线程来启动;线程池对象结束时,即它的线程组对象被注销时,所有的管理线程被全部销毁;c.针对多终端无线通信的线程异常处理机制:(c‑1)准备任务所需对象异常处理机制的实现步骤:(c‑1‑1)任务线程中的新任务开始运行前,辅线程获取当前任务所需对象的状态;(c‑1‑2)如果该任务所需对象没有准备齐全,辅线程会命令任务线程中的任务,在限定时间内等待任务所需对象空闲;(c‑1‑3)如果在限定时间内,任务所需对象准备齐全,则开始任务;(c‑1‑4)如果在限定时间内,任务所需对象没有准备齐全,则判定线程池死锁,抛弃该线程请求,接收下一个终端的请求;(c‑2)数据重传机制的实现步骤:(c‑2‑1)当服务器端与手持终端建立Socket连接后,超过限定时间,仍没有获取到手持终端的数据,则释放与该手持终端建立的Socket连接资源;(c‑2‑2)服务器端保持监听状态,等待接收从手持终端发来的连接请求;(c‑2‑3)若限定时间内仍没有收到手持终端发来的数据,释放与该手持终端建立的Socket连接资源,重新保持监听状态;(c‑2‑4)若限定时间内完成数据的接收,则对数据解析并进行相应的处理;(c‑3)其他异常情况处理步骤:(c‑3‑1)除接收手持终端数据之外的任务占用任务线程超过限定时间后仍未完成,判定该任务执行异常,抛弃本次任务请求;(c‑3‑2)任务线程在任务执行时或任务执行后出现异常,该任务线程会被自动抛弃,线程池会为待处理任务自动开辟新的任务线程;(c‑3‑3)任务线程中的每个任务执行完成后,辅线程会核准线程池的线程数是否与开始的设置相同,当发生线程泄露或线程运行异常情况时,辅线程会在线程池中添加新的任务线程作为补充;(c‑3‑4)任务线程长时间无任务占用时,辅线程关闭该任务线程,等待有新任务需求时再重新创建。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海大学;上海格州电子股份有限公司,未经上海大学;上海格州电子股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/patent/201710076545.4/,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top