写点什么

多线程

35 人感兴趣 · 183 次引用

  • 最新
  • 推荐
https://static001.geekbang.org/infoq/ab/ab528130efd5d78ad496b58b42c4d1e6.jpeg?x-oss-process=image/resize,w_416,h_234

打造一个通用、可配置、多句柄的数据上报 SDK

用户头像
昔年6 月 22 日

一个 App 一般会存在很多场景去上传 App 中产生的数据,比如 APM、埋点统计、开发者自定义的数据等等。所以本篇文章就讲讲如何设计一个通用的、可配置的、多句柄的数据上报 SDK。

并发王者课 - 铂金 4:令行禁止 - 为何说信号量是线程间的同步利器

用户头像
秦二爷6 月 21 日

欢迎来到《并发王者课》,本文是该系列文章中的第17篇。 在并发编程中,信号量是线程同步的重要工具。在本文中,我将带你认识信号量的概念、用法、种类以及Java中的信号量。

并发王者课 - 铂金 3:一劳永逸 - 如何理解锁的多次可重入问题

用户头像
秦二爷6 月 21 日

在前面的文章《铂金1:探本溯源-为何说Lock接口是Java中锁的基础》中,我们提到了锁的可重入问题,并作了简单介绍。鉴于锁的可重入是一个重要概念,所以本文把拿出来做一次单独讲解,以帮助你彻底理解它。

并发王者课 - 铂金 2:豁然开朗 -“晦涩难懂”的 ReadWriteLock 竟如此妙不可言

用户头像
秦二爷6 月 17 日

欢迎来到《并发王者课》,本文是该系列文章中的第15篇。 在上篇文章中,我们介绍了Java中锁的基础Lock接口。在本文中,我们将介绍Java中锁的另外一个重要的基本型接口,即ReadWriteLock接口。

并发王者课 - 铂金 1:探本溯源 - 为何说 Lock 接口是 Java 中锁的基础

用户头像
秦二爷6 月 16 日

在黄金系列中,我们介绍了并发中一些问题,比如死锁、活锁、线程饥饿等问题。在并发编程中,这些问题无疑都是需要解决的。所以,在铂金系列文章中,我们会从并发中的问题出发,探索Java所提供的锁的能力以及它们是如何解决这些问题的。

并发王者课 - 黄金 3:雨露均沾 - 不要让你的线程在竞争中被“饿死”

用户头像
秦二爷6 月 15 日

在上篇文章中,我们介绍了避免死锁的几种策略。虽然死锁臭名昭著,然而在并发编程中,除了死锁之外,还有一些同样重要的线程活跃性问题值得关注。它们的知名度不高,但破坏性极强,本文将介绍的正是其中的线程饥饿和活锁问题。

并发王者课 - 黄金 3:雨露均沾 - 不要让你的线程在竞争中被“饿死”

用户头像
秦二爷6 月 13 日

在上篇文章中,我们介绍了避免死锁的几种策略。虽然死锁臭名昭著,然而在并发编程中,除了死锁之外,还有一些同样重要的线程活跃性问题值得关注。它们的知名度不高,但破坏性极强,本文将介绍的正是其中的线程饥饿和活锁问题。

并发王者课 - 黄金 1:两败俱伤 - 互不相让的线程如何导致了死锁僵局

用户头像
秦二爷6 月 12 日

欢迎来到《并发王者课》,本文是该系列文章中的第11篇。 在本篇文章中,我将为你介绍多线程中的经典问题-死锁,以及死锁的产生原因、处理和方式预防措施。

并发王者课 - 青铜 10:千锤百炼 - 如何解决生产者与消费者经典问题

用户头像
秦二爷6 月 10 日

欢迎来到《并发王者课》,本文是该系列文章中的第10篇。 在本篇文章中,我将为你介绍并发中的经典问题-生产者与消费者问题,并基于前面系列文章的知识点,通过wait、notify实现这一问题的简版方案。

并发王者课 - 青铜 9:防患未然 - 如何处理线程中的异常

用户头像
秦二爷6 月 10 日

欢迎来到《并发王者课》,本文是该系列文章中的第9篇。 在本篇文章中,我将为你介绍线程中异常的处理方式以及uncaughtExceptionHandler用法。

深入浅出,阿里多位大佬联合撰写—153 页 Java 多线程小册

简单来说,当面试的内容远远超出实际工作内容的时候就已经是在内卷了。很多技术工作中明用不到,但为了更好的岗位和薪资,你不得不去学习更多的技术!

C++ 多线程强制终止

​​​​​​​​​​​​​​​​摘要: 实际上,没有任何语言或操作系统可以为你提供异步突然终止线程的便利,且不会警告你不要使用它们。

https://static001.geekbang.org/infoq/19/19412520a502b213577bcc89e797cbc2.png?x-oss-process=image/resize,w_416,h_234

想挑战阿里 P7?这份 500 页“Java 并发多线程源码笔记”啃完了?“46 问的高并发系统设计”都会了?

近年来在大厂的面试中,高并发不但占比较多,而且已经不局限于并发工具的使用,更多的会深入到底的层实现原理,这样能考察候程序员的内功,看其是否能知其所以然。关于市面上关于Java并发编程的资料感觉有些知识点不是很清晰,于是展开了对Java并发编程原理的

并发王者课 - 青铜 8:分工协作 - 从本质认知线程的状态和动作方法

用户头像
秦二爷5 月 31 日

欢迎来到《并发王者课》,本文是该系列文章中的第8篇。 在本篇文章中,我将从多线程的本质出发,为你介绍线程相关的状态和它们的变迁方式,并帮助你掌握这块知识点。

并发王者课 - 青铜 7:顺藤摸瓜 - 如何从 synchronized 中的锁认识 Monitor

用户头像
秦二爷5 月 28 日

在前面的文章中,我们已经体验过synchronized的用法,并对锁的概念和原理做了简单的介绍。然而,你可能已经察觉到,有一个概念似乎总是和synchronized、锁这两个概念如影相随,很多人也比较喜欢问它们之间的区别,这个概念就是Monitor,也叫监视器。

并发王者课 - 青铜 6:借花献佛 - 如何格式化 Java 内存工具 JOL 输出

用户头像
秦二爷5 月 27 日

在前面的文章《一探究竟-如何从synchronized理解Java对象头中的锁》中,我们介绍并体验了JOL工具。虽然JOL很赞,但它的输出对我们不是很友好,如果不借助工具,我们很难直观理解其中的含义。

https://static001.geekbang.org/infoq/21/21e85a14d49191302f7e10aa2d7c16f9.png?x-oss-process=image/resize,w_416,h_234

并发王者课 - 青铜 5:一探究竟 - 如何从 synchronized 理解 Java 对象头中的锁

用户头像
秦二爷5 月 27 日

在前面的文章《青铜4:synchronized用法初体验》中,我们已经提到锁的概念,并指出synchronized是锁机制的一种实现。可是,这么说未免太过抽象,你可能无法直观地理解锁究竟是什么?所以,本文会粗略地介绍synchronized背后的一些基本原理,让你对Java中的锁

Redis 不是一直号称单线程效率也很高吗,为什么又采用多线程了?

Redis是目前广为人知的一个内存数据库,在各个场景中都有着非常丰富的应用,前段时间Redis推出了6.0的版本,在新版本中采用了多线程模型。

https://static001.geekbang.org/infoq/b3/b3d9557daf39c2a4274a98ca2b00fe79.png?x-oss-process=image/resize,w_416,h_234

ThreadLocal 内存溢出代码演示和原因分析!

用户头像
王磊5 月 26 日

ThreadLocal 翻译成中文是线程本地变量的意思,也就是说它是线程中的私有变量,每个线程只能操作自己的私有变量,所以不会造成线程不安全的问题。​

并发王者课 - 青铜 4:synchronized 用法初体验

用户头像
秦二爷5 月 25 日

在前面的文章《双刃剑-理解多线程带来的安全问题》中,我们提到了多线程情况下存在的线程安全问题。本文将以这个问题为背景,介绍如何通过使用synchronized关键字解这一问题。

并发王者课 - 青铜 3: 双刃剑 - 理解多线程带来的安全问题

用户头像
秦二爷5 月 24 日

在前面的两篇文章中,我们体验了线程的创建,并从OS进程层面认识了线程。现在,我们已经知晓多线程在解决一些场景问题时有特效。

线程与线程池的那些事之线程篇

用户头像
秦怀杂货店5 月 20 日

线程和线程池相关的知识,是Java学习或者面试中一定会遇到的知识点,本篇我们会从线程和进程,并行与并发,单线程和多线程等,一直讲解到线程池,线程池的好处,创建方式,重要的核心参数,底层实现,拒绝策略,参数设置,动态调整,线程隔离等等。

并发王者课 - 青铜 2:峡谷笔记 - 简单认识 Java 中的线程

用户头像
秦二爷5 月 20 日

在前面的《兵分三路:如何创建多线程》文章中,我们已经通过代码直观地了解如何在Java中创建一个线程,相信你已经有了一定的体感。在本篇文章中,我们将基于前面的示例代码,对线程做些必要的说明,以帮助你更加直观了解线程,并为后续的学习打下基础。

https://static001.geekbang.org/infoq/65/6556894a18ce1762d62a5339c84d13c5.png?x-oss-process=image/resize,w_416,h_234

并发王者课 - 青铜 1:兵分三路 - 从创建线程开始

用户头像
秦二爷5 月 18 日

从本文开始,我将基于王者中的段位和场景,从青铜、黄金、铂金、砖石、星耀到王者,不同的段位对应不同的难易程度,由浅入深逐步介绍JAVA中的并发编程,并在每周二、四、六持续更新。

多线程_多线程资料文章-InfoQ写作平台