An embodiment of the invention discloses a method and device for concurrent debugging and rendering of a script for concurrent debugging and concurrent rendering of multiple pages in the same integrated environment page of WEB IDE. The method of embodiment of the invention includes: receiving the debugging and running information of the Rhino script on the server side, the debugging run information includes multiple thread information, each thread information includes the debugID and the variable state value; a corresponding Webworker sub thread is created for each debugID corresponding thread, and each thread is sent to the corresponding W. In ebworker subthreads, the Webworker subthread is used to execute the corresponding thread code; receives the execution results for the corresponding thread sent by each Webworker Zi Xiancheng; displays the execution results respectively, and displays the variable state values in the rendering display.
【技术实现步骤摘要】
一种脚本的并发调试渲染方法及装置
本专利技术涉及数据处理
,尤其涉及一种脚本的并发调试渲染方法及装置。
技术介绍
WEBIDE(WEBIntegratedDevelopmentEnvironment)是基于浏览器的集成开发环境,可进行代码开发、检查及并发调试,所谓并发调试即在进程的调试过程中寻找断点位置,且只暂停最先遇到该断点位置的线程,而其他线程继续运行。Rhino作为一个开源的脚本引擎框架,可以运行类似javascript语法的脚本,可以调用java的方法,也可以嵌入Java执行,由于Rhino脚本作为后端java代码的扩展实现时,它的执行是在后端执行,并且是被后端java调用执行。在调试过程中,代码的执行以及过程变量值是需要在后端完成后返回给浏览器的,浏览器等待收到返回信息后渲染到WEBIDE中的相应断点的调试状态。由于java属于并发调试,所以对应的WEBIDE中的渲染调试状态也需要达到并发调试的效果。而现有web端脚本调试的方式都是单页面调试方式,不能满足WebIDE中调试的需求。WEBIDE是需要胜任在同一个集成环境页签中完成对多个页面的同时调试。因此需要处于调试状态的WEBIDE页签不能阻塞对该页签中元素的操作。
技术实现思路
本专利技术实施例提供了一种脚本的并发调试渲染方法及装置,用于实现在WEBIDE的同一个集成环境页签中对多个页面的并发调试及并发渲染。本专利技术实施例第一方面提供了一种脚本的并发调试渲染方法,包括:接收Rhino脚本在服务器端的调试运行信息,调试运行信息包括多个线程信息,每个线程信息包括debugID和变量状态值;对每 ...
【技术保护点】
1.一种脚本的并发调试渲染方法,其特征在于,包括:接收Rhino脚本在服务器端的调试运行信息,所述调试运行信息包括多个线程信息,每个线程信息包括debugID和变量状态值;对每个所述debugID对应的线程创建一个对应的Webworker子线程,并将每个线程发送至对应的Webworker子线程中,所述Webworker子线程用于执行对应的线程代码;接收由每个所述Webworker子线程发送的对于对应线程的执行结果;对所述执行结果分别进行渲染展示,并在渲染展示中显示所述变量状态值。
【技术特征摘要】
1.一种脚本的并发调试渲染方法,其特征在于,包括:接收Rhino脚本在服务器端的调试运行信息,所述调试运行信息包括多个线程信息,每个线程信息包括debugID和变量状态值;对每个所述debugID对应的线程创建一个对应的Webworker子线程,并将每个线程发送至对应的Webworker子线程中,所述Webworker子线程用于执行对应的线程代码;接收由每个所述Webworker子线程发送的对于对应线程的执行结果;对所述执行结果分别进行渲染展示,并在渲染展示中显示所述变量状态值。2.根据权利要求1所述的方法,其特征在于,所述多个线程信息中至少有一个线程信息还包括:断点位置信息;对所述执行结果分别进行渲染展示,并在渲染展示中显示所述变量状态值,包括:对所述执行结果分别进行渲染展示,并在渲染展示中显示所述变量状态值和所述断点位置信息。3.根据权利要求2所述的方法,其特征在于,在所述接收由每个所述Webworker子线程发送的对于对应线程的执行结果之后,所述方法还包括:将包括断点位置信息的第一线程排列在主线程队列中,直至所述第一线程对应的中断指令结束,对所述第一线程进行完全渲染展示。4.根据权利要求3所述的方法,其特征在于,所述方法还包括:实时监听每个所述Webworker子线程对于对应线程的执行结果,直至每个所述Webworker子线程对应的线程执行结束。5.根据权利要求1至4中任一项所述的方法,其特征在于,所述方法还包括:对每个所述Webworker子线...
【专利技术属性】
技术研发人员:范来华,
申请(专利权)人:金蝶软件中国有限公司,
类型:发明
国别省市:广东,44
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。