From b726dc97538b7d4ba71fd06c14161017dd67c2b7 Mon Sep 17 00:00:00 2001
From: xubinbin <1323875150@qq.com>
Date: 星期三, 10 五月 2023 15:38:22 +0800
Subject: [PATCH] "@schedule"是Spring框架提供的一种定时任务执行机制,默认情况下它是单线程执行,项目中多次使用fixedRate按指定频率执行任务(不管前面任务是否已经完成),在同时执行多个定时任务时可能会出现阻塞和性能问题,为了解决这种单线程瓶颈问题,将定时任务的执行机制改为支持多线程
---
src/main/java/com/genersoft/iot/vmp/vmanager/bean/WVPResult.java | 31 ++++++++++++++++++++++---------
1 files changed, 22 insertions(+), 9 deletions(-)
diff --git a/src/main/java/com/genersoft/iot/vmp/vmanager/bean/WVPResult.java b/src/main/java/com/genersoft/iot/vmp/vmanager/bean/WVPResult.java
index db937d6..d293b8d 100644
--- a/src/main/java/com/genersoft/iot/vmp/vmanager/bean/WVPResult.java
+++ b/src/main/java/com/genersoft/iot/vmp/vmanager/bean/WVPResult.java
@@ -1,7 +1,10 @@
package com.genersoft.iot.vmp.vmanager.bean;
-public class WVPResult<T> {
+import io.swagger.v3.oas.annotations.media.Schema;
+
+@Schema(description = "缁熶竴杩斿洖缁撴灉")
+public class WVPResult<T> implements Cloneable{
public WVPResult() {
}
@@ -13,27 +16,32 @@
}
+ @Schema(description = "閿欒鐮侊紝0涓烘垚鍔�")
private int code;
+ @Schema(description = "鎻忚堪锛岄敊璇椂鎻忚堪閿欒鍘熷洜")
private String msg;
+ @Schema(description = "鏁版嵁")
private T data;
- private static final Integer SUCCESS = 200;
- private static final Integer FAILED = 400;
- public static <T> WVPResult<T> Data(T t, String msg) {
- return new WVPResult<>(SUCCESS, msg, t);
+ public static <T> WVPResult<T> success(T t, String msg) {
+ return new WVPResult<>(ErrorCode.SUCCESS.getCode(), msg, t);
}
- public static <T> WVPResult<T> Data(T t) {
- return Data(t, "鎴愬姛");
+ public static WVPResult success() {
+ return new WVPResult<>(ErrorCode.SUCCESS.getCode(), ErrorCode.SUCCESS.getMsg(), null);
+ }
+
+ public static <T> WVPResult<T> success(T t) {
+ return success(t, ErrorCode.SUCCESS.getMsg());
}
public static <T> WVPResult<T> fail(int code, String msg) {
return new WVPResult<>(code, msg, null);
}
- public static <T> WVPResult<T> fail(String msg) {
- return fail(FAILED, msg);
+ public static <T> WVPResult<T> fail(ErrorCode errorCode) {
+ return fail(errorCode.getCode(), errorCode.getMsg());
}
public int getCode() {
@@ -59,4 +67,9 @@
public void setData(T data) {
this.data = data;
}
+
+ @Override
+ public Object clone() throws CloneNotSupportedException {
+ return super.clone();
+ }
}
--
Gitblit v1.8.0