[发明专利]一种高效的基于Java多线程和反射的任务执行方法在审
申请号: | 202011529257.8 | 申请日: | 2020-12-22 |
公开(公告)号: | CN112540840A | 公开(公告)日: | 2021-03-23 |
发明(设计)人: | 邵天雄;熊军 | 申请(专利权)人: | 盛银消费金融有限公司 |
主分类号: | G06F9/48 | 分类号: | G06F9/48 |
代理公司: | 北京律远专利代理事务所(普通合伙) 11574 | 代理人: | 王冠宇 |
地址: | 110013 辽宁省沈阳*** | 国省代码: | 辽宁;21 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 高效 基于 java 多线程 反射 任务 执行 方法 | ||
1.一种高效的基于Java多线程和反射的任务执行方法,具体按以下步骤执行:
S1:首先通过Java开启多线程,具体通过继承Thread类或实现Runnable接口或在函数体开启;
S2:然后在多线程开启运行时构造任意一个类的对象,在运行时判断对象所属的类型,并且获取在运行时对象的成员变量和方法信息,然后在运行时调用对象的方法;
S3:在构造任意一个类的对象时通过sql的方式进行执行,通过对所有任务的执行时间进行汇总,耗时最长的任务单独建立线程异步处理,然后将其他各个子任务进行划分,每个线程处理多个子任务,单子任务处理总时间不超过最长任务时间。
2.根据权利要求1所述的一种高效的基于Java多线程和反射的任务执行方法,其特征在于:在步骤S1中,
S2.1:继承Thread类中,定义bai一个继承自Java.lang.Thread类的du类A;
S2.2:覆盖zhiA类Thread类中的run方法;
S2.3:编写需要在run方法中执行的操作:run方法中的代码,线程执行体。
S2.4:在main方法的线程中,创建一个线程对象并启动线程;
S2.5:创建线程类对象A类,调用线程对象的start方法启动一个线程。
3.根据权利要求1所述的一种高效的基于Java多线程和反射的任务执行方法,其特征在于:在步骤S1中实现Runnable接口,首先定义在java.lang.Runnable接口中实现非线程类A,
S3.1:覆盖A类Runnable接口中的run方法;
S3.2:然后编写需要在run方法中执行的操作,具体是在run方法中,线程执行;
S3.3:在main方法的线程中,创建一个线程对象并启动线程;
S3.4:创建线程类对象,然后调用线程对象的start方法。
4.根据权利要求1所述的一种高效的基于Java多线程和反射的任务执行方法,其特征在于:在步骤S2中获取类型的对象的具有3种方式,具体为调用getClass、运用.class语法和运用static method Class.forName()。
5.根据权利要求4所述的一种高效的基于Java多线程和反射的任务执行方法,其特征在于:在获取对象时,具体通过返回一个Field对象,反映此Class对象所表示的类或接口的指定公共成员字段,通过public Field[]getFields()返回一个包含某些Field对象的数组,这些对象反映此Class对象所表示的类或接口的所有可访问公共字段;
通过public FieldgetDeclaredField(Stringname)返回一个Field对象,该对象反映此Class对象所表示的类或接口的指定已声明字段;
再通过public Field[]getDeclaredFields()返回Field对象的一个数组,这些对象反映此Class对象所表示的类或接口所声明的所有字段。
6.根据权利要求1所述的一种高效的基于Java多线程和反射的任务执行方法,其特征在于:在步骤S2中返回一个Method对象,反映此Class对象所表示的类或接口的指定公共成员方法;
通过public Method[]getMethods()返回一个包含某些Method对象的数组,反映此Class对象所表示的类或接口的公共member方法;
通过public MethodgetDeclaredMethod(Stringname,Class?...parameterTypes)返回一个Method对象,该对象反映此Class对象所表示的类或接口的指定已声明方法;
通过public Method[]getDeclaredMethods()返回Method对象的一个数组,这些对象反映此Class对象表示的类或接口声明的所有方法,包括公共、保护、有方法,但不包括继承的方法。
7.根据权利要求1所述的一种高效的基于Java多线程和反射的任务执行方法,其特征在于:在步骤S2中对象获取Constructor的方法;
通过public ConstructorTgetConstructor(Class?...parameterTypes)返回一个Constructor对象,反映此Class对象所表示的类的指定公共构造方法;
然后通过public Constructor?[]getConstructors()返回一个包含某些Constructor对象的数组,这些对象反映此Class对象所表示的类的所有公共构造方法;
通过public ConstructorTgetDeclaredConstructor(Class?...parameterTypes)
返回一个Constructor对象,该对象反映此Class对象所表示的类或接口的指定构造方法。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于盛银消费金融有限公司,未经盛银消费金融有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202011529257.8/1.html,转载请声明来源钻瓜专利网。