小编wwe*_*ner的帖子

如果并行处理,为什么在一个无限的数字流中按素数进行过滤?

我正在创建一个从200万开始的无限整数流,使用朴素素数测试实现过滤此流以生成负载并将结果限制为10.

Predicate<Integer> isPrime = new Predicate<Integer>() {
    @Override
    public boolean test(Integer n) {
        for (int i = 2; i < n; i++) {
            if (n % i == 0) return false;   
        }
        return true;
    }
};

Stream.iterate(200_000_000, n -> ++n)
    .filter(isPrime)
    .limit(10)
    .forEach(i -> System.out.print(i + " "));
Run Code Online (Sandbox Code Playgroud)

这按预期工作.

现在,如果我在过滤之前添加对parallel()的调用,则不会产生任何内容并且处理无法完成.

Stream.iterate(200_000_000, n -> ++n)
    .parallel()
    .filter(isPrime)
    .limit(10)
    .forEach(i -> System.out.print(i + " "));
Run Code Online (Sandbox Code Playgroud)

有人能指出我在这里发生的事情的正确方向吗?

编辑:我不是在寻找更好的素性测试实现(它旨在成为一个长期运行的实现),而是为了解释使用并行流的负面影响.

concurrency java-8 java-stream

11
推荐指数
1
解决办法
450
查看次数

Spring 中的宽松绑定真的不支持 @Value 注释吗?

我们使用环境变量来配置 Spring Boot 应用程序中的各种属性。我发现FOO_BAR_BAZ通过@Value(${foo.bar.baz})在 Spring Boot 1.4.3.RELEASE / Spring 4.3.5.RELEASE 中开箱即用地绑定环境变量。

然而,从我在[宽松的绑定文档][1]中读到的内容来看,这似乎仅对@ConfigurationProperties.

所以我的问题是,我是否必须期望观察到的行为(如上所述)会在未来的版本中消失?

[1]: https: //docs.spring.io/spring-boot/docs/1.4.3.RELEASE/reference/htmlsingle/#boot-features-external-config-relaxed-binding,https : //docs.spring .io/spring-boot/docs/1.4.3.RELEASE/reference/htmlsingle/#boot-features-external-config-vs-value

spring spring-boot spring-config

6
推荐指数
1
解决办法
1561
查看次数

如何删除nuxt项目中的window._nuxt_,它对我来说太大了

当我使用nuxt开发我的项目时,我发现了一些问题。

window.__NUXT__=(function(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,_,$,aa, ..... code was too larger

Run Code Online (Sandbox Code Playgroud)

我可以删除它或使用js文件替换它吗?

vue.js nuxt.js vue-ssr

3
推荐指数
1
解决办法
2737
查看次数