From 1a3cf55ff261cd3d36e1b56d8af181183201093b Mon Sep 17 00:00:00 2001 From: shizhendong Date: Tue, 22 Oct 2024 17:58:38 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20list=20application=20=E6=8E=A5=E5=8F=A3?= =?UTF-8?q?=E8=8E=B7=E5=8F=96=20app=20lastCommit=20=E4=BD=BF=E7=94=A8?= =?UTF-8?q?=E8=99=9A=E6=8B=9F=E7=BA=BF=E7=A8=8B=E6=89=A7=E8=A1=8C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../asw/common/config/ThreadPoolConfig.java | 17 +++++++++++++++++ .../module/app/service/impl/GitServiceImpl.java | 8 +++++++- 2 files changed, 24 insertions(+), 1 deletion(-) create mode 100644 src/main/java/net/geedge/asw/common/config/ThreadPoolConfig.java diff --git a/src/main/java/net/geedge/asw/common/config/ThreadPoolConfig.java b/src/main/java/net/geedge/asw/common/config/ThreadPoolConfig.java new file mode 100644 index 0000000..11a3bf7 --- /dev/null +++ b/src/main/java/net/geedge/asw/common/config/ThreadPoolConfig.java @@ -0,0 +1,17 @@ +package net.geedge.asw.common.config; + +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; + +import java.util.concurrent.ExecutorService; +import java.util.concurrent.Executors; + +@Configuration +public class ThreadPoolConfig { + + @Bean + public ExecutorService virtualThreadExecutor() { + return Executors.newVirtualThreadPerTaskExecutor(); + } + +} \ No newline at end of file diff --git a/src/main/java/net/geedge/asw/module/app/service/impl/GitServiceImpl.java b/src/main/java/net/geedge/asw/module/app/service/impl/GitServiceImpl.java index bd9b88c..aadbd2e 100644 --- a/src/main/java/net/geedge/asw/module/app/service/impl/GitServiceImpl.java +++ b/src/main/java/net/geedge/asw/module/app/service/impl/GitServiceImpl.java @@ -26,6 +26,7 @@ import org.eclipse.jgit.treewalk.CanonicalTreeParser; import org.eclipse.jgit.treewalk.TreeWalk; import org.eclipse.jgit.treewalk.filter.PathFilter; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.beans.factory.annotation.Qualifier; import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Service; @@ -33,6 +34,7 @@ import java.io.File; import java.io.IOException; import java.util.*; import java.util.concurrent.CompletableFuture; +import java.util.concurrent.ExecutorService; import java.util.concurrent.TimeUnit; import java.util.stream.Collectors; @@ -61,6 +63,10 @@ public class GitServiceImpl implements IGitService { @Autowired private IWorkspaceService workspaceService; + @Autowired + @Qualifier("virtualThreadExecutor") + private ExecutorService virtualThreadExecutor; + /** * is binary file * @@ -289,7 +295,7 @@ public class GitServiceImpl implements IGitService { log.warn(e); } return T.MapUtil.newHashMap(); - }) + }, this.virtualThreadExecutor) ); resultList.add(m);