首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
java并发
订阅
街角的猫
更多收藏集
微信扫码分享
微信
新浪微博
QQ
14篇文章 · 0订阅
JAVA 学习并发笔记(一)
线程:每一个任务称为一个线程(thread),它是线程控制的简称。 可以同时运行一个以上线程的程序称为多线程程序。 本质的区别在于每个进程拥有自己的一整套变量,而线程则共享数据。 共享变量使线程之间的通信比进程之间的通信更有效,更容易。 将任务代码移到实现了 Runnable …
Java必知必会之(四)---多线程全揭秘(上)
本文旨在用最通俗的语言讲述最枯燥的基本知识。 线程是进程中的一个执行流程,是被系统独立调度和分派的基本单位。 进程是指运行中的程序(没运行的程序,系统是不会为之分配资源的),每个进程都有自己独立的内存空间,当一个程序进入内存运行时,程序内部可能包含多个程序执行流,这个程序执行流…
啃碎并发(九):内存模型之基础概述
线程通信是指线程之间以何种机制来交换信息。在命令式编程中,线程之间的通信机制有两种:共享内存和消息传递。 线程同步是指程序用于控制不同线程之间操作发生相对顺序的机制。 Java的并发采用的是共享内存模型,Java线程之间的通信总是隐式进行,整个通信过程对程序员完全透明。如果你想…
BIO,NIO,AIO概览
在Java中,有三种IO模型: BIO,NIO,AIO。介绍这三种IO模型之前,需要介绍一下同步,异步与阻塞,非阻塞的概念,然后再从Java和Linux OS的角度去分析BIO,NIO和AIO 同步就是发起一个调用后,被调用者未处理完请求之前,调用不返回。 异步就是发起一个调用…
一道“史上最难”java面试题引发的线程安全思考
推荐大家先别急着看下面的答案,试着看看这个题的答案是什么?刚开始看这个题的时候,第一反应我擦嘞,这个是哪个老铁想出的题,如此混乱的代码调用,真是惊为天人。当然这是一道有关于多线程的题,最低级的错误,就是一些人对于.start()和.run不熟悉,直接会认为.start()之后r…
Java并发(4)- synchronized与CAS
上一篇文章中我们说过,volatile通过lock指令保证了可见性、有序性以及“部分”原子性。但在大部分并发问题中,都需要保证操作的原子性,volatile并不具有该功能,这时就需要通过其他手段来达到线程安全的目的,在Java编程中,我们可以通过锁、synchronized关键…
多线程编程完全指南
因为并发是整个分布式集群的基础,通过分布式集群不仅可以大大降低同等负载能力的价格,还能使整体可扩展到的负载能力上限大大提升。低廉的服务成本使互联网行业的创意井喷,任何一个人都有能力创建并维持一个服务于成百上千甚至数万人的应用服务;而极高的服务能力上限让无数业务的线上化成为了可能…
Java并发——Condition
调用AQS的模板方法release()方法释放同步状态并且唤醒在同步队列中头结点的后继节点引用的线程,如果释放成功则正常返回,否则抛出异常。随后调用isOnSyncQueue()判断节点是否在同步队列
5种必会的Java异步调用转同步的方法你会几种
同步调用:调用方在调用过程中,持续等待返回结果。 异步调用:调用方在调用过程中,不直接等待返回结果,而是执行其他任务,结果返回形式通常为回调函数。 其实,两者的区别还是很明显的,这里也不再细说,我们主要来说一下Java如何将异步调用转为同步。换句话说,就是需要在异步调用过程中,…
再有人问你synchronized是什么,就把这篇文章发给他。
在再有人问你Java内存模型是什么,就把这篇文章发给他。中我们曾经介绍过,Java语言为了解决并发编程中存在的原子性、可见性和有序性问题,提供了一系列和并发处理相关的关键字,比如synchronized、volatile、final、concurren包等。 海明威在他的《午后…