一种基于移动通信网络的计分系统保持实时在线的方法 【技术领域】
本发明涉及一种基于移动通信网络的计分系统保持实时在线的方法。
背景技术
目前,已有一种基于移动通信网络的高尔夫计分系统,包括手机和无线高尔夫计分运营服务器,所述的手机通过无线网络与所述的无线高尔夫计分运营服务器进行通信,其中手机包括:
高尔夫计分登录单元:用于向所述的无线高尔夫计分运营服务器发出计分登录请求;
高尔夫计分输入单元:用于输入高尔夫计分信息,并将高尔夫计分信息发送给所述的无线高尔夫计分运营服务器;
高尔夫计分输出单元:用于接收所述的无线高尔夫计分运营服务器传来的高尔夫计分结果信息,并显示该高尔夫计分结果信息;
所述的无线高尔夫计分运营服务器包括:
手机认证单元:用于对发出高尔夫计分登录请求的手机进行认证,并允许认证成功的手机登录;
高尔夫计分信息处理单元:用于接收手机传来的高尔夫计分信息,并对高尔夫计分信息进行处理,生成高尔夫计分结果信息;
高尔夫计分结果信息输出单元:用于将所述的高尔夫计分结果信息传送给对应的手机。
由于高尔夫球场位置大多较为偏僻,地形复杂,无线传输网络在高尔夫球场经常存在覆盖盲区。在实际使用中,该高尔夫计分系统的手机端常出现断线的情况。
常见的计分系统连接GPRS的方法是:
(1)通过手机中自带的微软系统所提供的连接GPRS的API来实现。手机在使用过程中如果遇到断线情况,则需要手动操作连接,操作频率过高还会出现死机的情况。
(2)这个过程中用户不仅要做正常的操作,还需要去不断手动地连接GPRS才能保证GPRS的连接状态,或是当有用户操作时才会去连接GPRS,这时候并不能保证GPRS的连接状态是连接成功的,所以往往会出现操作失败的提示。手机常见的手动连接GPRS的示意图如图1所示。
该高尔夫计分系统的手机端通常为杆弟所持有,并由其负责实时输入现场的比分,若在比赛过程中出现断线时,手机端的用户界面上通常会出现数据无法上传的提示,处于紧张激烈的赛程中,他们要么会忽略该提示,以为所输入数据已上传,要么会手忙脚乱地进行连线操作,容易造成误操作,致使数据上传出现问题,需要投入大量的事后纠正工作,才可能保证该计分系统的准确性,大大增加维护成本。
【发明内容】
本发明提供一种基于移动通信网络的计分系统保持实时在线的方法,用于通过手机或PDA的后台处理,实现自动连线,消除由于无线通信网络的覆盖盲区造成的通信中断对数据传输可靠性的影响,提高了计分系统数据传输的可靠性和准确度,大大减少了维护成本。
一种基于移动通信网络的计分系统保持实时在线的方法,其中,手机系统在用户操作主线程外增设自动重连子线程,该用户操作主线程主要负责处理用户登陆、添加分数、修改分数、查询分数等用户操作;该自动重连子线程主要负责间歇检查手机是否断线,若断线则自动重新连接无线网络;该用户操作主线程和自动重连子线程的输出数据都通过无线通信模块连接到互联网与服务器实现数据交互;当用户操作主线程和自动重连子线程同时使用无线通信模块时,对先使用的线程加线程锁,另一线程则等待该无线通信模块出现空闲状态。
该自动重连子线程主要包括以下几个步骤:
步骤1、手机系统用代码检查手机是否有信号,若判断无信号,则间隔预设时间再次检查,直至手机有信号,转步骤2;
步骤2、手机系统用代码检查手机无线网络的连接状态,若判断手机已连线或正在连线,转步骤1;若判断手机为连线失败,则转步骤3;
步骤3、使用代码重新连接无线网络,使得手机能连上互联网,间隔预设时间后转步骤1。
本发明在用户操作主线程之外增加自动重连子线程,这样,手机(PDA)系统能自动进行连线操作,使得计分系统能保持实时在线,减少用户发生误操作、死机和锁机的情形,进而提高了数据传输的可靠性和准确度,使用更方便。
本发明将自动重连GPRS的流程实现放在自动重连子线程中运行,不会造成用户操作卡住的情况,也不会在信号不好的时候出现死机的情况;本发明在采用多线程方式解决GPRS连接问题的同时,通过加线程锁的方式有效地实现了资源共享,使其可以最大限度地使用系统CPU资源,防止死锁的发生,有效地解决了系统死机或是假死的问题。
【附图说明】
图1为手机常见的手动连接GPRS的示意图;
图2为本发明手机自动连接GPRS的示意图;
图3为本发明中主线程与子线程同步工作流程图;
图4为本发明中自动重连子线程的工作流程图。
以下结合附图和实施例对本发明作进一步详述。
【具体实施方式】
本发明一种基于移动通信网络的计分系统保持实时在线的方法,其中的计分系统不局限于高尔夫运动。本发明以使用GPRS数据传输方式地PDA为例,将其作为计分系统中的手机端。
采用本发明的PDA系统能自动连接无线通信网络,用户不必再去关心无线通信网络的连接情况,该PDA系统定时(例如每15秒)会对无线通信网络的连接状况及信号进行一次检测并自动连接到当前网络。如图2所示,当用户通过PDA用户界面登录计分系统时,PDA系统自动以GPRS方式连接到互联网,通过PDA用户界面输入比赛数据,PDA实时上传数据通过互联网传送至服务器;服务器将处理后的数据通过互联网返回给PDA,并显示在PDA的用户界面上。
如图3所示,本发明一种基于移动通信网络的计分系统保持实时在线的方法,其中,手机(PDA)系统在用户操作主线程1外增设自动重连子线程2,该用户操作主线程1主要负责处理用户登陆、添加分数、修改分数、查询分数等用户操作;该自动重连子线程2主要负责间歇检查手机是否断线,若断线则自动重新连接GPRS;该用户操作主线程1和自动重连子线程2的输出数据都通过GPRS通信模块3连接到互联网,与服务器实现数据交互;当用户操作主线程1和自动重连子线程2同时使用GPRS通信模块3时,对先使用的线程加线程锁,另一线程则等待该GPRS通信模块3出现空闲状态。
如图4所示,该自动重连子线程2主要包括以下几个步骤:
步骤1、手机系统用代码检查手机是否有信号,若判断无信号,则间隔预设时间(例如15秒)再次检查,直至手机有信号,转步骤2;
步骤2、手机系统用代码检查手机GPRS的连接状态,若判断手机GPRS已连接或正在连接,转步骤1;若判断手机GPRS为连接失败,则转步骤3;
步骤3、使用代码重新连接GPRS,使得手机能连上互联网,间隔预设时间后转步骤1。
上述步骤2中,当判断手机为正在连接中,说明这时GPRS状态正在由连接失败转向连接成功,所以不直接转入步骤3而是等待下一次的检查连接,转入步骤1。
重新连接GPRS的步骤3会消耗系统资源的一段代码,本发明中手机(PDA)系统如果用单一线程去重新连接GPRS,在连接次数过于频繁时,系统资源占用率高,会造成死机的情况;本发明将自动重连GPRS的流程实现放在自动重连子线程2中运行,不会造成用户操作卡住的情况,也不会在信号不好的时候出现死机的情况。
本发明在采用多线程方式解决GPRS连接问题的同时,通过加线程锁的方式有效地实现了资源共享,使其可以最大限度的使用系统CPU资源,防止死锁的发生,有效地解决了系统死机或是假死的问题。