mirror of
https://gitee.com/jzsw-it/yexuejc-base.git
synced 2025-06-26 23:12:41 +08:00
1.2.0 增加异步线程处理工具
This commit is contained in:
parent
5ecb759db9
commit
e00164f85b
@ -16,7 +16,7 @@
|
|||||||
|
|
||||||
|
|
||||||
### 使用
|
### 使用
|
||||||
>yexuejc.base.version=1.1.9
|
>yexuejc.base.version=1.2.0
|
||||||
|
|
||||||
pom.xml
|
pom.xml
|
||||||
```
|
```
|
||||||
|
12
UPDATE.md
12
UPDATE.md
@ -1,6 +1,18 @@
|
|||||||
yexuejc-base 更新记录
|
yexuejc-base 更新记录
|
||||||
------------------
|
------------------
|
||||||
|
|
||||||
|
#### version :1.2.0
|
||||||
|
**time:2018-10-19 11:38:20** <br/>
|
||||||
|
**branch:** master <br/>
|
||||||
|
**update:** <br/>
|
||||||
|
>1. 增加异步线程处理工具
|
||||||
|
```$java
|
||||||
|
SysUtil.threadRun(() -> {
|
||||||
|
//异步执行代码块
|
||||||
|
}
|
||||||
|
```
|
||||||
|
#
|
||||||
|
|
||||||
#### version :1.1.9
|
#### version :1.1.9
|
||||||
**time:2018-9-23 11:57:36** <br/>
|
**time:2018-9-23 11:57:36** <br/>
|
||||||
**branch:** master <br/>
|
**branch:** master <br/>
|
||||||
|
9
pom.xml
9
pom.xml
@ -6,7 +6,7 @@
|
|||||||
|
|
||||||
<groupId>com.yexuejc.base</groupId>
|
<groupId>com.yexuejc.base</groupId>
|
||||||
<artifactId>yexuejc-base</artifactId>
|
<artifactId>yexuejc-base</artifactId>
|
||||||
<version>1.1.9</version>
|
<version>1.2.0</version>
|
||||||
|
|
||||||
<name>${project.artifactId}</name>
|
<name>${project.artifactId}</name>
|
||||||
|
|
||||||
@ -21,6 +21,7 @@
|
|||||||
<commons-codec.version>1.10</commons-codec.version>
|
<commons-codec.version>1.10</commons-codec.version>
|
||||||
<commons-io.version>2.6</commons-io.version>
|
<commons-io.version>2.6</commons-io.version>
|
||||||
<bcprov-jdk15on.version>1.60</bcprov-jdk15on.version>
|
<bcprov-jdk15on.version>1.60</bcprov-jdk15on.version>
|
||||||
|
<guava.version>20.0</guava.version>
|
||||||
</properties>
|
</properties>
|
||||||
|
|
||||||
<dependencies>
|
<dependencies>
|
||||||
@ -55,6 +56,12 @@
|
|||||||
<artifactId>bcprov-jdk15on</artifactId>
|
<artifactId>bcprov-jdk15on</artifactId>
|
||||||
<version>${bcprov-jdk15on.version}</version>
|
<version>${bcprov-jdk15on.version}</version>
|
||||||
</dependency>
|
</dependency>
|
||||||
|
<!--com.yexuejc.base.util.SysUtil.threadRun 异步处理代码-->
|
||||||
|
<dependency>
|
||||||
|
<groupId>com.google.guava</groupId>
|
||||||
|
<artifactId>guava</artifactId>
|
||||||
|
<version>${guava.version}</version>
|
||||||
|
</dependency>
|
||||||
</dependencies>
|
</dependencies>
|
||||||
|
|
||||||
|
|
||||||
|
@ -1,6 +1,9 @@
|
|||||||
package com.yexuejc.base.util;
|
package com.yexuejc.base.util;
|
||||||
|
|
||||||
|
import com.google.common.util.concurrent.ThreadFactoryBuilder;
|
||||||
|
|
||||||
import java.net.URL;
|
import java.net.URL;
|
||||||
|
import java.util.concurrent.*;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 系统工具类
|
* 系统工具类
|
||||||
@ -35,4 +38,42 @@ public class SysUtil {
|
|||||||
return clazz.getClass().getResource(StrUtil.setStr(filePath, "/"));
|
return clazz.getClass().getResource(StrUtil.setStr(filePath, "/"));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 开启线程执行<p>
|
||||||
|
* 异步处理代码
|
||||||
|
*
|
||||||
|
* @param threadRun
|
||||||
|
*/
|
||||||
|
public static void threadRun(ThreadRun threadRun) {
|
||||||
|
threadRun(null, threadRun);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 异步处理代码
|
||||||
|
*
|
||||||
|
* @param poolName 开启线程名称
|
||||||
|
* @param threadRun
|
||||||
|
*/
|
||||||
|
public static void threadRun(String poolName, ThreadRun threadRun) {
|
||||||
|
if (StrUtil.isEmpty(poolName)) {
|
||||||
|
poolName = "java-pool-%d";
|
||||||
|
}
|
||||||
|
ThreadFactory namedThreadFactory = new ThreadFactoryBuilder()
|
||||||
|
.setNameFormat(poolName).build();
|
||||||
|
ExecutorService singleThreadPool = new ThreadPoolExecutor(1, 1,
|
||||||
|
0L, TimeUnit.MILLISECONDS,
|
||||||
|
new LinkedBlockingQueue<Runnable>(1024), namedThreadFactory, new ThreadPoolExecutor.AbortPolicy());
|
||||||
|
|
||||||
|
singleThreadPool.execute(() -> {
|
||||||
|
threadRun.execute();
|
||||||
|
});
|
||||||
|
singleThreadPool.shutdown();
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 异步执行代码块
|
||||||
|
*/
|
||||||
|
public interface ThreadRun {
|
||||||
|
void execute();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user