Concurrent programming synchronized
Concurrent programming synchronized
What I said earlier
As I said at the beginning, I want to sort out some learning documents of java Concurrent Programming. This is the third article: synchronized keyword.
It mainly discusses the use of synchronized keywords, lock principle, lock reentry, dirty reading, lock upgrade and other issues.
Welc ...
Posted by hykc on Wed, 09 Mar 2022 11:46:40 +0100
3, Communication between multiple threads
preface
1, synchronized and Volatile
volatile
Visibility can be guaranteed, but atomicity cannot be guaranteed (thread safety problem)
Prohibit reordering
synchronized
Both visibility and atomicity can be guaranteed
Reordering is not prohibited
synchronized is blocking. Only one thread can access it at a time
2, Reorder
Concept: the c ...
Posted by FUEL on Sun, 06 Mar 2022 15:32:33 +0100
Using conditional lock to control the synchronization of multiple threads (java implementation)
catalogue
Title:
answer:
Explanation:
Recently, I did a topic of multithreading synchronization. I used conditional locking to solve it. By doing this problem, we can have a basic understanding of the application of locks. This article will briefly explain it.
Ps: after finishing, I found that this is the original question on Li buckle. T ...
Posted by moonman89 on Fri, 04 Mar 2022 13:34:38 +0100
JDK1. 8 source code analysis of concurrenthashmap
JDK1. 8 source code analysis of concurrenthashmap
jdk1.8 container initialization
Source code analysis
There are five construction methods in the ConcurrentHashMap of jdk8. None of the four construction methods initialize the internal array, but deal with the initial values of some variablesThe array initialization of concurrent HashMap of j ...
Posted by reapfyre on Fri, 04 Mar 2022 09:25:47 +0100
Mysql optimistic lock practice
This paper first introduces the concept of optimistic lock, then introduces the implementation principle of optimistic lock, and finally demonstrates the implementation of optimistic lock with a spring boot project.
catalogue
What is optimistic lock
Implementation principle of optimistic lock
actual combat
What is optimistic lock
Durin ...
Posted by rlalande on Mon, 21 Feb 2022 03:30:58 +0100
Avoid deadlock hazard
In the concurrent environment, in order to ensure the thread safety of sharing variable data, we need to use the locking mechanism. If the lock is not used properly, it may cause deadlock, thread starvation and other problems.
If a deadlock occurs in a Java application, the program cannot be recovered automatically, which will seriously cause ...
Posted by jamfrag on Fri, 18 Feb 2022 19:54:29 +0100
Simple second kill system - optimization I (detailed notes)
Introduction and optimization process of simple second kill system
windows native hardware configuration:
8-core 32G
linux server hardware configuration:
2-core 4G
Foreword, the optimized simple second kill system does not involve distribution, so naturally there are no technical points such as master-slave replication. Here, we should a ...
Posted by 22Pixels on Fri, 18 Feb 2022 17:03:17 +0100
Synchronization Tool - Exchanger
1. Introduction to Exchanger
Exchanger - Exchanger, JDK1. A synchronizer was introduced at 5th hour, and it can be seen literally that the main function of this class is to exchange data.
Exchanger is a bit like CyclicBarrier, we know that CyclicBarrier is a fence, and threads that reach it need to wait for a certain number of other threads t ...
Posted by biltong on Fri, 18 Feb 2022 10:40:51 +0100
Concurrent programming 5: detailed explanation of the underlying principle of java Concurrent thread pool and source code analysis
Detailed explanation of the underlying principle and source code analysis of java Concurrent thread pool
Performance comparison between thread and thread pool
The first part analyzes Java threads. Now let's analyze the java thread pool. Before analyzing the thread pool, let's think about whether the more threads we create, the better. Obv ...
Posted by Jay2391 on Wed, 16 Feb 2022 12:01:10 +0100
Let's talk about the synchronized keyword
Basic use of synchronized
Object lock
Custom object lock
/**
* Object lock example 2
*/
public class SyncObjLock2 implements Runnable{
private static SyncObjLock2 instance=new SyncObjLock2();
private Object lock1=new Object();
private Object lock2=new Object();
/**
* You can see that using sync will cause threads to ...
Posted by mandukar on Sun, 13 Feb 2022 09:43:53 +0100