標簽:并發編程

Java

java并發編程-12個原子類

6

songhua.gao 發布于 2019-12-06

背景 多線程更新變量的值,可能得不到預期的值,當然增加syncronized關鍵字可以解決線程并發的問題。 其它兩個附帶的類順帶看了一下: LongAddr 多線程先的sum操作 簡單分類: 基本類型原子類 使用原子的方式更新基本類型,包括: AtomicBoolean Atom...

閱讀(13)評論(0)贊 (0)

Java

2019年100道經典JAVA面試真題解析

16

songhua.gao 發布于 2019-12-05

2019年快結束了,給大家整理了今年來最經典的面試真題100道,每個題目都有詳細的解答,收集了java基礎,容器,多線程,反射,對象拷貝,Java Web,異常,網絡,設計模式,Spring / Spring MVC,等專題的經典面試真題,和詳細分析。沒道題目都詳細講解,文章過長...

閱讀(13)評論(0)贊 (0)

Java

Java線程池實現

1

likai 發布于 2019-12-05

電腦的CPU資源是有限的,任務的處理速度與線程數量之間并不是正相關。當線程數量過多,CPU要頻繁的在不同線程切換,反而會引起處理性能的下降。線程池中最大的線程數,是考慮多種因素來事先設定的,比如硬件的條件,業務的類型等等。 當我們向一個固定大小的的線程池中請求一個線程時,當線程池...

閱讀(10)評論(0)贊 (0)

Java

從ReentrantLock的實現看AQS的原理及應用

17

hellas 發布于 2019-12-05

前言 Java中的大部分同步類(Lock、Semaphore、ReentrantLock等)都是基于AbstractQueuedSynchronizer(簡稱為AQS)實現的。AQS是一種提供了原子式管理同步狀態、阻塞和喚醒線程功能以及隊列模型的簡單框架。本文會從應用層逐漸深入到...

閱讀(12)評論(0)贊 (0)

Java

java并發編程實戰筆記整理

hanze 發布于 2019-12-05

一、線程安全性 在線程安全性中,最核心的概念是正確性,而正確性的含義是:某個類的行為與其規范完全一致。這里的規范可以粗略理解為在各種限定條件下,類對象的結果與預期一致。在單線程中,正確性可以近似的定義為“所見即所知(we know it when we see it)”。在大概明...

閱讀(11)評論(0)贊 (0)

Spring

Springboot-spring高級話題

1

yanxinchi 發布于 2019-12-05

Aware:意識到,目的是讓Bean獲得到Spring容器的服務,可以直接繼承ApplicationContextAware獲得Spring容器的所有服務,但原則上是使用到什么接口,就實現什么接口。 二、需求 將txt文件里面的內容,讀取到控制臺。 三、示例 1.新建test.t...

閱讀(10)評論(0)贊 (0)

Java

JUC:讀寫鎖ReentrantReadWriteLock

5

尖兵 發布于 2019-12-03

之前提到的ReentrantLock是排他鎖,在同一時刻只允許一個線程進行訪問,而讀寫鎖在同一時刻可以允許多個讀線程訪問,但是在寫線程訪問時,所有的讀線程和其他寫線程均被阻塞。讀寫鎖維護了一對鎖,一個讀鎖和一個寫鎖,通過分離讀鎖和寫鎖,使得并發性相比一般的排他鎖有了很大提升。 特...

閱讀(13)評論(0)贊 (0)

Java

Java并發編程:Thread類的使用

4

hellas 發布于 2019-12-03

前言: 前面大致了解了線程的創建和生命周期,線程在生命周期中并不是固定處于某一個狀態而是隨著代碼的執行在不同狀態之間切換。本篇通過對Thread類中方法的講解來展示線程生命周期的變化,同時也會對Thread類本身進行理解。 面試問題 Q :wait和sleep方法的區別? Q :...

閱讀(12)評論(0)贊 (0)

Java

面試美團,面試官突然問我 Java “鎖” ,我哭了

24

xiaoli.he 發布于 2019-12-03

點擊“ 開發者技術前線 ”,選擇“星標:top:” 13:21 在看|星標|留言,  真愛 本文轉載自「美團技術博客」 前言 Java提供了種類豐富的鎖,每種鎖因其特性的不同,在適當的場景下能夠展現出非常高的效率。本文旨在對鎖相關源碼( 本文中的源碼來自JDK 8 )、...

閱讀(14)評論(0)贊 (0)

Java

探索 Android 內存優化方法

12

puefu.he 發布于 2019-12-03

code小生,一個專注 Android 領域的技術平臺 公眾號回復 Android 加入我的安卓技術群 作者:燈不利多 鏈接:https://juejin.im/post/5d3ada056fb9a07eb94fd1bc 聲明:本文已獲 燈不利多 授權發表,轉發等請聯系原作者授權...

閱讀(11)評論(0)贊 (0)

Java

別再問我Runnable、Callable、Future、FutureTask有什么關聯了

3

zhuangli 發布于 2019-12-02

掃描下方二維碼或者微信搜索公眾號 菜鳥飛呀飛 ,即可關注微信公眾號,閱讀更多 Spring源碼分析 和 Java并發編程 文章。 Runnable與Callable 眾所周知,當我們使用線程來運行 Runnable 任務時,是不支持獲取返回值的,因為Runnable接口的run(...

閱讀(11)評論(0)贊 (0)

Java

JVM宕機的這場雪,比2008年來的更早一些,也要更冷一些!

6

hanze 發布于 2019-12-01

你是否也遇到過這些問題? 1、運行著的線上系統突然卡死,系統無法訪問,甚至直接OOM! 2、新項目上線,對各種JVM參數設置一臉茫然,直接默認吧,然后就…… 3、想解決線上JVM GC問題,但卻無從下手。 4、每次面試之前都要重新背一遍JVM的一些原理概念...

閱讀(17)評論(0)贊 (0)

Java

Java并發編程:線程的生命周期

2

尖兵 發布于 2019-12-01

前言: 上一篇中我們了解到進程和線程的區別,以及使用多線程的優缺點,本篇主要講在Java中是如何去創建一個線程,以及線程的生命周期。 面試問題 Q :線程的實現方式? Q :start()和run()的區別? Q :線程的生命周期和狀態? 線程的生命周期 1.1如何創建一個線程 ...

閱讀(15)評論(0)贊 (0)

Java

JAVA基礎知識復習-JVM篇

3

dulong 發布于 2019-11-30

JVM(Java Virtual Machine)是運行Java字節碼的虛擬機,由一套字節碼指令集、一組程序寄存器、一個虛擬機棧、一個虛擬機堆、一個方法區和一個垃圾回收器構成。 運行過程 .java(源文件)-> .class(字節碼文件) -> 機器碼 構成 類加載...

閱讀(13)評論(0)贊 (0)

Java

Java中的鎖 Lock和synchronized

14

尖兵 發布于 2019-11-30

鎖的釋放-獲取建立的happens before 關系 鎖是java并發編程中最重要的同步機制。鎖除了讓臨界區互斥執行外,還可以讓釋放鎖的線程向獲取同一個鎖的線程發送消息。 下面是鎖釋放-獲取的示例代碼:class MonitorExample { int a = 0; publ...

閱讀(15)評論(0)贊 (0)

Java

Java內存模型

2

xiaoli.wang 發布于 2019-11-29

Java 內存模型是根據英文Java Memory Model(JMM)翻譯過來的。其實JMM并不像JVM內存結構一樣是真實存在的。 他只是一個抽象的概念 。用于屏蔽掉各種硬件和操作系統的內存訪問差異,以實現讓 Java 程序在各種平臺下都能達到一致的并發效果。 在 Java 面...

閱讀(11)評論(0)贊 (0)

Java

Java并發編程基礎知識

xiaoli.wang 發布于 2019-11-27

[TOC] Java并發編程基礎知識 進程和線程 在并行程序中 進程 和 線程 是兩個基本的運行單元,在 Java 并發編程中,并發主要核心在于 線程 1. 進程 一個進程有其專屬的運行環境,一個進程通常有一套完整、私有的運行時資源;尤其是每個進程都有其專屬的內存空間。 通常情況...

閱讀(20)評論(0)贊 (0)

Java

2019年世界頂級編程語言,Python衛冕,Java第二,Go差點跌出前10

2

wenming.gapo 發布于 2019-11-27

Language Ranking: IEEE Spectrum Python穩居榜首,它的流行很大程度上是由大量可用于它的專用庫推動的,特別是在人工智能領域,Keras庫是深度學習開發人員中的重量級,Keras提供了一個到TensorFlow、CNTK深度學習框架和工具包的接口。...

閱讀(24)評論(0)贊 (0)

2013平特肖公式