Java里的并发和并行区别_Java中的并发性和并行性有区别吗?

这取决于谁在定义它。创建Go编程语言

call code Concurrent的人员如果被分解成可以并行处理的片段,而并行性意味着这些片段实际上是在同一时间运行的。

由于这些是编程原理,编程语言与定义的方式无关。然而,Java 8将具有更多的功能来实现并发和并行性,而不会使您的代码过多。例如,这样的代码:

List coolItemIds = new List();

for(Item item : getItems())

{

if(item.isCool())

{

int itemId = item.getId();

coolItemIds.add(item);

}

}

…这是非并发和非并行的,可以这样写(我的语法可能是错误的,但希望你得到这个想法):

Iterable items = getItems();

Iterable coolItems = items.filter(item -> item.isCool());

Iterable coolItemIds = coolItems.map(item -> item.getId());

上面的代码是以并发方式编写的:没有一个给定的代码要求一次一个过滤一个coolItem,或者一次只能在一个项目上调用getId(),或者甚至一开始的项目的列表需要在结尾处的项目之前进行过滤或映射。根据getItems()返回的Iterable类型,给定的操作可能并行运行,但是您编写的代码是并发的。

也感兴趣的

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值