异步网络应用程序处理方法技术

技术编号:8682562 阅读:275 留言:0更新日期:2013-05-09 02:37
本发明专利技术公开的异步网络应用程序处理方法包括:建立多个线程,其中各个线程具有相同的运行逻辑;其中一个线程获得全局锁,从而获得对事件队列的处理权;具有事件队列处理权的线程查询待处理事件队列,当待处理事件队列中存在待处理事件时,则该线程读取一个待处理事件,以便对该待处理事件进行处理;当待处理事件队列中不存在待处理事件时,则该线程对事件列表进行监测,当该线程监测到事件时,将所述事件加入待处理事件队列。本发明专利技术通过建立多个等效的线程以及多个线程之间对全局锁的竞锁逻辑,实现了对多线程简洁、高效的管理,节约了软硬件资源,通过简洁的线程模型进行超时处理,实现了轻量级的定时器机制和安全高效的异步消息机制。

【技术实现步骤摘要】

本专利技术涉及网络通信技术,尤其涉及一种。
技术介绍
异步网络应用,是指当发起一个线程的调度后,调用者并不需要等待结果,而可以去处理其他事件,而执行该线程调用的逻辑单元在完成调用后,将结果通过状态、消息、或者回调的方式通知调用者。而与之相对的同步网络应用是指调用者发起调度后,不执行其他任务,只等待该调用的结果。可以看出,异步网络应用是一种效率更高的网络通信方式。随着互联网的快速发展,各种异步网络应用不断丰富,因此,对网络应用软件的稳定性、高效性都提出了越来越高的要求。目前被广泛应用的有以下几种:(I)多线程处理方法。在该方法中,对于服务器与单个客户端之间建立的会话,对于服务器与单个客户端之间建立的会话都建立独立的进程/线程进行处理。因此,这种方法将创建大量的进程/线程,从而消耗大量的系统资源,而且,众多线程之间的同步和切换也会导致系统效率的大幅下降。(2)单线程处理方法。在该方法中,以单一的线程来处理所有的网络会话的相关运算。即所有网络相关操作,都由一个线程,通过操作系统支持的多路复用技术,实现对多会话网络业务的并发支持。这种模型可以节约系统资源,但其响应速度和并发度都存在不足,应本文档来自技高网...

【技术保护点】
一种异步网络应用程序处理方法,其特征在于,所述方法包括:a.建立多个线程,其中各个线程具有相同的运行逻辑;b.其中一个线程获得全局锁,从而获得对事件队列的处理权;c.具有事件队列处理权的线程查询待处理事件队列,当待处理事件队列中存在待处理事件时,则该线程读取一个待处理事件,以便对该待处理事件进行处理;当待处理事件队列中不存在待处理事件时,则该线程对事件列表进行监测,当该线程监测到事件时,将所述事件加入待处理事件队列;d.在出现以下三种情况的任何一种时,当前获得所述处理权的线程退出全局锁,由所有线程竞争全局锁,并执行步骤b:(1)当前获得所述处理权的线程读取一个待处理事件后退出全局锁,并且在处理...

【技术特征摘要】

【专利技术属性】
技术研发人员:何林强周明伟张兴明傅利泉朱江明吴军吴坚
申请(专利权)人:浙江大华技术股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1