关于同步自我札记

简介: Synchronization线程通信主要是指共享访问字段和对象引用字段。这个通信形式是十分高效的,但是也可能有2种错误:线程冲突和内存一致错误。防止错误的工具就是 synchronization

JAVA并发官方教程:
https://docs.oracle.com/javase/tutorial/essential/concurrency/index.html

同步(Synchronization)

线程通信主要是指共享访问字段和对象引用字段。这个通信形式是十分高效的,但是也可能有2种错误:线程冲突和内存一致错误。防止错误的工具就是 synchronization.
然而,同步介绍在线程内容中,同步发生在2个或多个线程去同时访问相同的资源,导致java运行时去执行1个或多个线程更慢的,甚至挂起执行。饿死和活锁 是线程内容的形式。看Liveness相关内容。

这部分内容覆盖下面的主题:

  • 线程冲突描述怎样产生错误当多线程访问共享数据时
  • 内存一致错误描述非一致可见共享内存访问的结果
  • 同步方法描述一个简单的方法能高效防止线程冲突和内存一致错误
  • 暗锁和同步描述了更多通用同步方法和怎样同步使用暗锁
  • 原子访问讨论一般操作思想不能被其他线程影响。

以上内容翻译自下面的内容,如有不当内容请各位拍砖留言。
image.png

相关文章
|
3月前
|
消息中间件 存储 Kafka
【Kafka大揭秘】掌握这些秘籍,让你的消息状态跟踪稳如老狗,再也不怕数据丢失的尴尬时刻!
【8月更文挑战第24天】Kafka作为一个领先的分布式流数据平台,凭借其出色的性能和扩展性广受青睐。为了保障消息的可靠传输与处理,Kafka提供了一系列核心机制:生产者确认确保消息成功到达;消费者位移管理支持消息追踪与恢复;事务性消息保证数据一致性;Kafka Streams的状态存储则适用于复杂的流处理任务。本文将详细解析这些机制并附带示例代码,帮助开发者构建高效稳定的消息处理系统。
39 5
|
6月前
|
编解码 安全 定位技术
典型崩溃问题集锦
典型崩溃问题集锦
49 0
|
6月前
|
算法 搜索推荐 数据挖掘
掌握程序员之剑:解析常见算法与其在生活和工作中的影响
掌握程序员之剑:解析常见算法与其在生活和工作中的影响
81 1
|
消息中间件 存储 前端开发
一次线上事故,我顿悟了异步的精髓
一次线上事故,我顿悟了异步的精髓
|
存储 Python
热饭的测开成果盘点第二十二期:wqrfnium自动维护库
本期介绍的是一个组件,身为python的第三方库,已经被pypi收录,且国内镜像源也早已复制。也就是说可以通过pip install 来下载。这个组件包括:wqrfnium 和 wqrfnium_app 。他们都是基于python/selenium/appium的一个可以自动维护ui元素,抵抗ui元素定位变化的组件。
热饭的测开成果盘点第二十二期:wqrfnium自动维护库
|
存储 安全 算法
重生之我在人间敲代码_Java并发基础_安全性、活跃性以及性能问题
并发编程中我们需要注意的问题有很多,很庆幸前人已经帮我们总结过了,主要有三个方面,分别是:安全性问题、活跃性问题和性能问题。
重生之我在人间敲代码_Java并发基础_用“等待-通知”机制优化循环等待
在破坏占用且等待条件的时候,如果转出账本和转入账本不满足同时在文件架上这个条件,就用死循环的方式来循环等待。如果循环等待操作耗时非常短,而且并发冲突量也不大时,这个方案还挺不错的,因为这种场景下,循环上几次或者几十次就能一次性获取转出账户和转入账户了。但是如果循环等待操作耗时长,或者并发冲突量大的时候,循环等待这种方案就不适用了,因为在这种场景下,可能要循环上万次才能获取到锁,太消耗 CPU 了。
|
小程序 网络安全 API
技术干货 | mPaaS 客户端问题排查:漫长的 3s 等待之谜
对于开发者来说,排查手段已经不再局限于构建代码过程中的调试,往往需要扩充排查方法,从多种途径对问题进行分析和定位。这篇文章会和大家分享 mPaaS 开发者的一例小程序网络性能问题排查之旅。
984 0
技术干货 | mPaaS 客户端问题排查:漫长的 3s 等待之谜
|
消息中间件 Arthas Java
RocketMQ 很慢?引出了一个未解之谜
前段时间发现,在使用 RockerMQ console 时,查询消息的时候出现很慢,查询耗时大于 10 秒,少则 5、6 秒,多则 14+ 秒。这到底是为什么?查询消息为啥会出现这么大的耗时?
RocketMQ 很慢?引出了一个未解之谜
|
微服务
《复杂系统突现论》读后
版权声明:本文为半吊子子全栈工匠(wireless_com,同公众号)原创文章,未经允许不得转载。
976 0