1. In Java programming, multithreading concurrency is always somewhat confusing: why is concurrency generated? What is the impact of concurrency? What technologies (mechanisms) are available to handle concurrency in Java
I looked up some information about the causes of concurrency. There are two reasons for this: first, there is a shared resource and there is a modification to the resource (static variable), and there is a state variable in the object and the object is used incorrectly in multi-threading (it should be a coding problem).
Impact: Generally speaking, it is not getting the expected results.
Volatile and synchromized can be used in Java.
The following address in more detail describes the concurrency, very good, it is recommended. Http://www.cnblogs.com/dolphin0520/p/3920373.html
Slowly update in ...
A collection of great blogs about Java