I remember when I came into contact with the computer in the third grade of primary school, that was 1995, that year released Windows95, but I study time is just DOS system, simple for the file of some command operation and Wubi
In the past, the computer was a single CPU, that is, a single task processing, multi-tasking to later slowly developed, multi-tasking on behalf of the computer can handle many parallel operations at the same time, so that the CPU is high utilization, multiple tasks can be shared. The emergence of multitasking for software developers need to do more, that is, the release of resources, that is, garbage collection, when the software does not need to release resources, so that other software can be freed up to use, like the iOS memory mechanism, IOS5 before the need to manually operate, After iOS5 can be set to automatic processing, and some of the Android programs do not good enough, in the background of the phone will always be executed, causing phone fever, rogue software rampant, in fact, is to raise a chestnut.
Then, multithreading technology appears, so that a software program can have multiple threads can operate in parallel, as in Warcraft, a migrant workers mining, a peasant worker logging, a migrant worker out hunting, this is 3 threads.
In fact, multithreading is more complex than multitasking, there are multiple threads will involve concurrency, concurrency that is, read and write to the memory will appear similar to the dirty read Phantom read (common DB I inside days) error, although the odds are small, but a lot of threads, large concurrency, it is possible. I believe that the friends who understand concurrency know.
In fact, my first contact with the multithreaded language is not Java, but in C # WinForm. I'm sure that a friend who learns Java will learn Java multithreading before he touches swing.
In fact, a long time ago to write some of the Java multi-threaded articles, plus recently there are several friends learning threads, the next will not regularly update some related articles ~
Java concurrency and multithreading that stuff