V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  zhady009  ›  全部回复第 10 页 / 共 16 页
回复总数  318
1 ... 2  3  4  5  6  7  8  9  10  11 ... 16  
2021-04-16 20:09:49 +08:00
回复了 zhangslob669 创建的主题 Java 关于 Java 线程池并发查询的问题
```java

@Test
public void demo() {
QueryTask var0 = new QueryTask(900);
QueryTask var1 = new QueryTask(2100);
QueryTask var2 = new QueryTask(2000);
QueryTask var3 = new QueryTask(2000);

Demo<QueryTask, Integer> test = new Demo<>(1000, List.of(var0, var1, var2, var3));
long l = System.currentTimeMillis();
Collection<Integer> d = test.execute();
System.out.println(System.currentTimeMillis() - l);
assert d.size() > 0;
for (Integer integer : d) {
assert integer <= 1000;
}
}
static class Demo<T extends Supplier<E>, E> {
private static final ExecutorService ES = Executors.newFixedThreadPool(10);
private final int timeout;
private final Collection<T> tasks;
Demo(int timeout, Collection<T> tasks) {
this.timeout = timeout;
this.tasks = tasks;
}
public List<E> execute() {
List<CompletableFuture<E>> collect = tasks.stream().map(x -> CompletableFuture.supplyAsync(x, ES)
.completeOnTimeout(null, timeout, TimeUnit.MILLISECONDS))
.collect(Collectors.toUnmodifiableList());

CompletableFuture<List<E>> listCompletableFuture = CompletableFuture.allOf(collect.toArray(new CompletableFuture[collect.size()]))
.thenApply(v -> collect.stream().map(CompletableFuture::join)
.filter(Objects::nonNull)
.collect(Collectors.toList()));
return listCompletableFuture.join();
}
}
static class QueryTask implements Supplier<Integer> {
private final int time;
QueryTask(int time) {
this.time = time;
}
@Override
public Integer get() {
try {
//query
Thread.sleep(time);
} catch (InterruptedException e) {
e.printStackTrace();
}
return time;
}
}

```
2021-04-16 19:59:52 +08:00
回复了 zhangslob669 创建的主题 Java 关于 Java 线程池并发查询的问题
CompletableFuture 有个 completeOnTimeout 超时的时候可以设置默认值给个 null
最后过滤掉为 null 的
2021-04-16 11:14:30 +08:00
回复了 hehezhang 创建的主题 Java 有人 idea 升级到 2021.1 遇到无法 import 的 bug 吗
删掉 iml 和.idea 重新检索一次
2021-03-16 14:29:58 +08:00
回复了 kerrspace 创建的主题 程序员 码农有哪些职业病和如何预防
还是近视最容易有 最近也在注意了
2021-02-20 16:43:26 +08:00
回复了 woyao396 创建的主题 Java 关于 Java 中 maven 多模块项目的疑问
我们这边是打包把第三方的 jar 和源码分开
云盘上面先把第三方的 jar 按照集群应用放上去
启动参数 classpath 指定多一个对应的路径就好了 除非有第三方依赖更改才要更新
2021-02-19 14:09:28 +08:00
回复了 HuaAn9527 创建的主题 程序员 熬夜肝了个 IDEA 插件整合程序员常用的工具
@liu99 nginx Support 试试这个插件
nested 的原因吧
2020-12-24 14:11:51 +08:00
回复了 teaaa 创建的主题 iPhone 感觉我的 8P 能用到地老天荒了。
6s 用了 5 年 电池容量只有 58%..
@sagaxu 只用 jdk proxy 就要接口 没啥毛病
@sunbreak zen3 单核基本都在 155x-168x 好吧 R23 有差距但对笔记本来说相当可以
2020-11-04 20:39:53 +08:00
回复了 reaCodes 创建的主题 程序员 装一台深度学习主机,双 3090 显卡,请问配置怎么选择?
现在不建议上 3090 各种 boom 的消息
2020-10-28 19:05:40 +08:00
回复了 mocxe2vwww 创建的主题 Java Springboot 如何忽略 空的 json?
看错了 无视..
2020-10-28 19:04:58 +08:00
回复了 mocxe2vwww 创建的主题 Java Springboot 如何忽略 空的 json?
@RequestBody(required = false)
2020-10-13 10:39:56 +08:00
回复了 gejun123456 创建的主题 推广 最好的 Mybatis 代码提示, IDEA MybatisCodeHelperPro 插件送激活码
资瓷一波 用快 2 年了
2020-09-30 16:23:26 +08:00
回复了 NULL2020 创建的主题 Java Springboot 拦截器路径匹配问题请教
第一个可以用配置解决 第二个拦截器里写代码 HandlerMethod 可以知道是不是 GetMapping 或者 PostMapping 就行了 如果是 RequestMapping 就获取下 method 里面的值判断下
2020-09-27 19:11:21 +08:00
回复了 huntcool001 创建的主题 Java JDK 里面的自带的线程池为啥都不改一下实现?
@wysnylc 这个 api 的入参不是队列容量吧
2020-09-25 18:15:05 +08:00
回复了 tsingke 创建的主题 程序员 javaer 们, JPA 和 mybatis,喜欢用哪一个
@sagaxu 一般的条件 IDEA 插件自动生成 只有很特殊的才要写
根据自己分发的 clientId 来区分,在 api 网关转发
2020-09-04 19:25:53 +08:00
回复了 RedBeanIce 创建的主题 Java CompletableFuture 使用交流(其实是困解)
用这个都要加个 exceptionally(tx -> {log...})
不然你找不出问题
@lichengzhang2005 我想楼主吐槽的不是大小的问题, 一个项目引用各种重复功能的依赖 配置方式不统一
1 ... 2  3  4  5  6  7  8  9  10  11 ... 16  
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5423 人在线   最高记录 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 42ms · UTC 09:07 · PVG 17:07 · LAX 01:07 · JFK 04:07
Developed with CodeLauncher
♥ Do have faith in what you're doing.