首页 | 本学科首页   官方微博 | 高级检索  
相似文献
 共查询到18条相似文献,搜索用时 546 毫秒
1.
开发Java Web项目中发现服务之间的调用存在超时情况,由于涉及的处理逻辑全部是异步,引入定时重试的机制,重试工具选择了JDK自带的Scheduled Thread Pool Executor。当A服务依赖B服务,B服务由于在业务高峰期处理能力降低,导致大量A服务过来的请求超时,A加入了超时重试机制,间隔时间根据重试次数的多少来决定,次数越多,两次重试之间间隔的时间越多,此时的业务高峰也会给A带来大量请求,大量的超时会导致重试队列迅速堆积,直到内存溢出。该文从线程池工作机制、Scheduled Thread Pool Executor实例的创建,获取重试任务的过程以及提交任务的过程角度分析,并通过源代码的剖析和测试工具My Eclipse进行演示测试内存泄露的情况,得出避免内存泄露的解决方案。  相似文献   

2.
多线程编程是Java语言的一个重要特色,它使Java程序可同时进行多路运行,支持多任务并进行处理,可充分利用系统资源,提高程序的执行效率。本文在说明进程、线程的基本概念后,还介绍了线程的状态,多线程的调度原则,并详细讨论了实现多线程的两种途经:重载Thread类的run()方法和Rummble接口的run()方法,它们都具有相同的功能和作用。最后还介绍了多线程的分组管理方法。  相似文献   

3.
为了解决并行处理中同步阻塞会浪费系统资源和影响程序性能的问题,提出了一种基于CompletableFuture异步机制的自动重构方法。首先,使用WALA静态程序分析工具进行访问者模式分析、逃逸分析、别名分析以及数据流分析等静态程序分析技术,确定共享变量数据的操作方式;然后,基于CompletableFuture机制设置4种异步重构模式;最后,根据不同模式实现异步机制的自动重构。基于此方法,在Eclipse平台下开发了自动重构工具AsynRef,并对HSQLDB,Jenkins, JGroups和SPECjbb2005等4个大型实际应用程序进行自动重构,从重构个数、改变的代码行数、准确性和重构后程序性能等方面对AsynRef进行评估,对4个程序所包含的919个同步方法共完成387个异步机制转换。结果显示,使用AsynRef进行异步机制重构后,程序执行性能有8%到39%的不同程度的提升。AsynRef可以有效完成代码异步化自动重构,与传统手动重构相比,有效提升了异步化的重构效率。  相似文献   

4.
泛型程序设计可大幅度提高程序的可重用性、可靠性和开发效率,高抽象的泛型机制则有助于降低泛型编程的复杂度.该文介绍了一种抽象泛型机制的核心思想和编程技术,分析了新型Java中与之对应的实现机理,并归纳出相应的转换规则,且在既有平台中实现了抽象泛型程序到新型Java泛型程序的自动转换和运行,最后通过一个Kleen算法实例,展示了抽象泛型机制的实际运用和相应Java程序的自动生成.抽象泛型机制的新型Java实现,在降低可重用算法构件的设计复杂度、提高算法构件可靠性的同时,也为泛型构件的设计和描述提供了行之有效的新途径.  相似文献   

5.
Java中实现线程同步的方法   总被引:1,自引:0,他引:1  
Java 语言提供了多线程编程技术,利用 Java 语言可以方便地实现多任务并行工作的功能。但是,由于线程会导致程序的异步行为,因此,有必要提供一种方法在需要时实现同步。通常是在被调用的方法前加上 Synchronized 关键字,就可以阻止其他线程竞用,直到一个线程执行完动作为止。从而避免了线程在运行时所产生的混乱状态,使其有序运行,实现线程同步。  相似文献   

6.
Java语言中的线程同步互斥研究   总被引:1,自引:0,他引:1  
在介绍操作系统中引入多线程的原因后,介绍了Java语言中的多线程机制和编程实现方案,介绍了线程同步互斥机制,并用经典操作系统进程同步互斥算法实现程序,演示如何编写Java并发程序。  相似文献   

7.
基于Java对线程、多线程机制进行分析.线程是进程中单一顺序的执行流,彼此能够独立执行,是程序运行的基本单位.多线程机制将一个大任务分成几个子任务,彼此相对独立地并行执行,可以提高程序的性能和效率.  相似文献   

8.
针对廊道环境的数字重构问题,设计了一种基于单线激光雷达的数字重构系统.该系统利用移动机器人搭载单线激光雷达传感器,构建三维雷达扫描系统,实现廊道环境的自动扫描和实时重构.首先进行系统的硬件搭建,其次详细介绍了系统的数字重构过程,主要包括移动机器人控制模块设计、坐标转换、数据融合等.为了解决移动机器人运动偏离的问题,在控制系统中加入模糊PID(porportion integral differential)控制算法,保证了系统数据采集的准确性.对于2D点云到3D点云的转换的问题,提出了一种里程计数据和激光雷达传感器数据融合的方法.最后进行实验测试.结果 表明:该系统可以实现对一般复杂的廊道场景进行自动化采集和实时重构,不仅精度高而且重构特征明显.  相似文献   

9.
针对面向上下文的编程语言未提供支持动态层添加机制的缺陷,提出了一种以虚拟机为核心的支持层动态添加的编程框架,并给出了实现方法.编程框架的核心是一个扩展后的Java虚拟机将谓词测试融入到Java虚拟机来实现程序对上下文的感知,将对象组合与代理融入到Java虚拟机来实现层的动态激活,利用虚拟机自身提供的功能实现动态层添加.实验结果表明,基于扩展后的Java虚拟机的编程框架可以实现层激活和动态层添加,编程框架的层激活效率较基于编译器的最多提高10%左右.  相似文献   

10.
随着信息技术在各大领域的广泛应用,产生的多媒体数据所占比例越来越大,对多媒体数据处理的需求也越来越多,高级程序设计语言支持多媒体数据处理的功能也变得尤为重要.采用模型驱动的思想,在支持模型驱动软件开发PAR平台的Apla→Java程序自动生成系统中,扩充对多媒体数据处理的功能,并提出多媒体数据处理机制和Apla中基于关系代数的文本处理机制自然融合,包含了对多媒体数据处理的Apla语言程序,可以通过Apla→Java程序自动生成系统自动转换成等价的Java程序,使得Apla语言具有对多媒体数据处理的能力.  相似文献   

11.
软件重构的自动检测是目前软件重构领域的一个研究热点.目前,多重软件重构的自动检测方法能够检测出在不同软件版本的不同位置上实施的多重重构操作,但是对发生在不同软件版本的相同位置上的多重重构操作则无能为力.为此,该文提出了一种在函数级别,利用函数调用图,实现基于多版本的多重软件重构的自动检测方法.该方法能够自动检测出在不同软件版本中的同一个函数上发生的“函数抽取”和“函数重命名”多重重构操作.同时,通过实验验证了该方法的有效性.  相似文献   

12.
为了提高识别重构对象的效率和正确性,提出一种自动化识别重构对象的技术.首先,在程序切片的基础上,构造一种度量函数来量化元素间的依赖程度.然后,利用度量结果识别出在原程序的位置和从属关系不合理的元素,从而自动识别出程序中的"坏味道".与以往的手动识别相比,该方法可以自动地分析源代码,指出程序中不合理的地方,从而提高重构识别的效率,并建议使用相应的重构手段对"坏味道"实施更改,使代码更加合理、易于维护.最后,利用3个重构实例显示该方法能够识别出一些重构对象,从而验证了该方法的可行性.  相似文献   

13.
螺纹铣削作为一种先进的螺纹加工方法,研究其加工过程中切削力和切削温度的变化规律对提高刀具使用寿命及被加工表面质量具有重要的现实意义。以某可转位螺纹铣刀铣削加工45#钢为研究对象,在三维设计软件Pro/e中建立刀具三维实体模型,并导入金属切削工艺有限元软件AdvantEdge中进行铣削加工模拟仿真,得到加工过程中切削力和温度随时间的变化关系,对比分析了不同进给量的选择对切削力和切削温度的影响,分析结果为实际螺纹铣削加工及其进给量的选择提供参考。  相似文献   

14.
多线程机制使应用程序能够并行执行,容易实现网络上的实时交互行为本文分析了Java多线程机制的基本特点,介绍了在多用户远程协同工作系统中,运用Java多线程机制实现Server端和Client端交互信息的实时处理  相似文献   

15.
在软件体系结构层次实施重构,能更好地提高软件的易维护性.该文提出了一种体系结构规约重写的策略描述方法,将体系结构重构转换为接口重构和实现体重构两部分,给出了接口规约重写的基本操作,以及实现体规约重写的操作,并用策略描述语言对这些规则进行了描述和代码实现.  相似文献   

16.
易碎、黏度大的软黏食品或成品尺寸细薄的食品,切削时容易出现食品的破碎或粘刀现象.针对该类食品的切削加工,提出采用截面小、表面光滑的线状刀具,以脉冲驱动电磁铁,形成振动切削运动的切削设备进行加工.线状刀具采用单层单列的台阶方式安装,且相邻两列线状刀具的距离增加,被加工物料采用重块压住、方便夹紧装料.切削设备横向切割运动是采用脉冲电源驱动的振动电磁铁牵引的、高频的振动切削运动,通过PLC编程,调用生成不同脉冲幅度、脉冲频率和脉冲宽度的子程序,可以方便地调整脉冲参数,也可以调节产生进给运动的步进电机转速参数.对不同特性的食品和线状刀具,通过试验的方法,确定重块质量、脉冲参数和步进电机参数,在保证加工质量的情况下,最大程度地提高生产效率.  相似文献   

17.
线程模式是影响组件运行性能,资源消耗的重要因素.在简单介绍了COM 和COM 组件概念的基础上,深入探讨了COM 组件运行时的线程模式,分析了它们的资源开销,运行性能,并给出了一个COM 组件的设计实例.对基于COM 技术的高性能中间层软件开发具有工程指导意义.  相似文献   

18.
针对Java EE平台上Web应用系统中的分页查询显示问题,结合MVC模式和Struts2框架技术实现了一种Web分页模型。依托MVC层次结构设计,在业务逻辑层中定义DAO抽象类来实现数据库的可移植性,在显示层中引入JSP和Struts2标签实现分页导航的显示和逻辑的分离。实际应用证明,该分页模型移植性好、耦合性小且与数据库相关性小,能够节省维护时间。  相似文献   

设为首页 | 免责声明 | 关于勤云 | 加入收藏

Copyright©北京勤云科技发展有限公司  京ICP备09084417号