The invention discloses a method for realizing asynchronous data processing method, the method comprises: logic controller to create asynchronous call chain storage structure, the logic controller system by pre created; pending tasks stored in the asynchronous call chain storage structure in the logic controller will include at least a callback function, and the callback function processing tasks are assigned a working thread, then the relationship between the callback function with thread; when the logic controller receives a preset task execution trigger instruction, remove the tasks of a pending asynchronous call from the chain storage structure, and the callback function assign processing tasks to the corresponding working thread. Compared with the prior art, the embodiment of the invention uses asynchronous call chain storage structure to store pending tasks, without the need to write complex code to realize asynchronous asynchronous calls, and asynchronous call data processing with high efficiency.
【技术实现步骤摘要】
本专利技术涉及数据处理领域,具体涉及一种实现异步调用的数据处理方法及装置。
技术介绍
计算机在数据处理中可能遇到比较耗时的任务,在调用这种任务处理代码时,系统如果持续等待,可能会严重影响程序性能。例如,某个程序启动后需要执行打开文件读出其中的数据,再根据这些数据进行一系列初始化处理的耗时任务,那么程序主窗口的程序则不能及时执行,导致程序主窗口将迟迟不能显示,降低用户体验。目前,通过异步调用的实现可以把上述问题轻松化解。具体的,可以把整个初始化处理的任务放进一个单独线程,而主线程启动此线程后系统不会持续等待,而是同时启动主窗口程序的线程,让主窗口瞬间显示出来。也就是说,借助异步调用处理耗时的任务,使得用户的体验得到增强。但是,现有的实现异步调用的方法都比较复杂,例如利用jdk中提供的线程库,直接采用线程或线程池的方式对任务进行异步化,或者使用androidsdk中提供的HandlerThread对任务进行异步化,这些方式都需要编写复杂的异步化代码,而且实现异步调用的数据处理效率较低。
技术实现思路
有鉴于此,本专利技术提供了一种实现异步调用的数据处理方法及装置,能够提高实现异步调用的数据处理效率。一方面,本专利技术提供了一种实现异步调用的数据处理方法,所述方法包括:逻辑控制器创建异步调用链式存储结构,所述逻辑控制器由系统预先创建;所述逻辑控制器将包括至少一个回调函数的待处理任务存储于所述异步调用链式存储结构中,并为所述待处理任务中的回调函数分别分配一个工作线程,得到回调函数与工作线程的对应关系;当所述逻辑控制器接收到预设的任务执行触发指令时,从 ...
【技术保护点】
一种实现异步调用的数据处理方法,其特征在于,所述方法包括:逻辑控制器创建异步调用链式存储结构,所述逻辑控制器由系统预先创建;所述逻辑控制器将包括至少一个回调函数的待处理任务存储于所述异步调用链式存储结构中,并为所述待处理任务中的回调函数分别分配一个工作线程,得到回调函数与工作线程的对应关系;当所述逻辑控制器接收到预设的任务执行触发指令时,从所述异步调用链式存储结构中取出一个待处理任务,并将所述待处理任务中的回调函数分配到与其对应的工作线程中执行。
【技术特征摘要】
1.一种实现异步调用的数据处理方法,其特征在于,所述方法包括:逻辑控制器创建异步调用链式存储结构,所述逻辑控制器由系统预先创建;所述逻辑控制器将包括至少一个回调函数的待处理任务存储于所述异步调用链式存储结构中,并为所述待处理任务中的回调函数分别分配一个工作线程,得到回调函数与工作线程的对应关系;当所述逻辑控制器接收到预设的任务执行触发指令时,从所述异步调用链式存储结构中取出一个待处理任务,并将所述待处理任务中的回调函数分配到与其对应的工作线程中执行。2.根据权利要求1所述的方法,其特征在于,所述方法还包括:当所述逻辑控制器获知当前待处理任务完成时,从所述异步调用链式存储结构中取出所述当前待处理任务的下一个待处理任务,继续执行所述将所述待处理任务中的回调函数分配到与其对应的工作线程中执行的步骤。3.根据权利要求2所述的方法,其特征在于,所述方法还包括:当所述逻辑控制器获知所述异步调用链式存储结构为空时,删除所述异步调用链式存储结构。4.根据权利要求1所述的方法,其特征在于,所述异步调用链式存储结构为队列。5.根据权利要求1所述的方法,其特征在于,所述方法还包括:当所述逻辑控制器接收到预设的任务暂停触发指令时,将当前待处理任务挂起;并在所述逻辑控制器接收到预设的任务恢复触发指令时,将挂起的当前待处理任务恢复执行。6.根据权利要求1所述的方法,其特征在于,所述方法还包括:所述逻辑控制...
【专利技术属性】
技术研发人员:苟键,俞尚,林声炜,李宏伟,曾勇,翟一帆,梁祥泰,苟晓东,陈钟,
申请(专利权)人:腾讯科技深圳有限公司,
类型:发明
国别省市:广东;44
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。