[发明专利]一种高效的基于Java多线程和反射的任务执行方法在审
申请号: | 202011529257.8 | 申请日: | 2020-12-22 |
公开(公告)号: | CN112540840A | 公开(公告)日: | 2021-03-23 |
发明(设计)人: | 邵天雄;熊军 | 申请(专利权)人: | 盛银消费金融有限公司 |
主分类号: | G06F9/48 | 分类号: | G06F9/48 |
代理公司: | 北京律远专利代理事务所(普通合伙) 11574 | 代理人: | 王冠宇 |
地址: | 110013 辽宁省沈阳*** | 国省代码: | 辽宁;21 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 高效 基于 java 多线程 反射 任务 执行 方法 | ||
本发明涉及JAVA多线程技术领域,尤其涉及一种高效的基于Java多线程和反射的任务执行方法,本发明首先通过Java开启多线程,具体通过继承Thread类或实现Runnable接口或在函数体开启;然后在多线程开启运行时构造任意一个类的对象,在运行时判断对象所属的类型,并且获取在运行时对象的成员变量和方法信息,然后在运行时调用对象的方法;在构造任意一个类的对象时通过sql的方式进行执行,通过对所有任务的执行时间进行汇总,耗时最长的任务单独建立线程异步处理,然后将其他各个子任务进行划分,每个线程处理多个子任务,单子任务处理总时间不超过最长任务时间。该方法任务执行总时间由原来的各个子任务时间和,优化为最长任务时间。大大优化了任务执行效率。
技术领域
本发明涉及JAVA多线程技术领域,尤其涉及一种高效的基于Java多线程和反射的任务执行方法。
背景技术
线程是jvm调度的最小单元,也叫做轻量级进程,进程是由线程组成,线程拥有私有的程序技术器以及栈,并且能够访问堆中的共享资源。这里提出一个问题,为什么要用多线程?有一下几点,首先,随着cpu核心数的增加,计算机硬件的并行计算能力得到提升,而同一个时刻一个线程只能运行在一个cpu上,那么计算机的资源被浪费了,所以需要使用多线程。其次,也是为了提高系统的响应速度,如果系统只有一个线程可以执行,那么当不同用户有不同的请求时,由于上一个请求没处理完,那么其他的用户必定需要在一个队列中等待,大大降低响应速度,所以需要多线程。
Java的反射(reflection)机制是指在程序的运行状态中,可以构造任意一个类的对象,可以了解任意一个对象所属的类,可以了解任意一个类的成员变量和方法,可以调用任意一个对象的属性和方法。这种动态获取程序信息以及动态调用对象的功能称为Java语言的反射机制。反射被视为动态语言的关键。比较常见的是通过多线程处理数据,但是对于无法直接通过方法调用情况,决定采用多线程与反射共有的方式进行数据指标处理。
发明内容
有鉴于此,本发明的目的是提供一种高效的基于Java多线程和反射的任务执行方法,。
本发明提供了一种高效的基于Java多线程和反射的任务执行方法,具体按以下步骤执行:S1:首先通过Java开启多线程,具体通过继承Thread类或实现Runnable接口或在函数体开启;
S2:然后在多线程开启运行时构造任意一个类的对象,在运行时判断对象所属的类型,并且获取在运行时对象的成员变量和方法信息,然后在运行时调用对象的方法;在步骤S2中返回一个Method对象,反映此Class对象所表示的类或接口的指定公共成员方法;
通过public Method[]getMethods()返回一个包含某些Method对象的数组,反映此Class对象所表示的类或接口的公共member方法;
通过public MethodgetDeclaredMethod(Stringname,Class?...parameterTypes)返回一个Method对象,该对象反映此Class对象所表示的类或接口的指定已声明方法;
通过public Method[]getDeclaredMethods()返回Method对象的一个数组,这些对象反映此Class对象表示的类或接口声明的所有方法,包括公共、保护、有方法,但不包括继承的方法。
进一步,获取类型的对象的具有3种方式,具体为调用getClass、运用.class语法和运用static method Class.forName()。
进一步,在获取对象时,具体通过返回一个Field对象,反映此Class对象所表示的类或接口的指定公共成员字段,通过public Field[]getFields()返回一个包含某些Field对象的数组,这些对象反映此Class对象所表示的类或接口的所有可访问公共字段;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于盛银消费金融有限公司,未经盛银消费金融有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202011529257.8/2.html,转载请声明来源钻瓜专利网。