동시 처리 스레드 및 멀티 - 좋은가 또는 나쁜 프로그램을 설계하는 중요한 피사체의 품질,이 책을 통해 스레드 디자인 패턴의 개념과 관련된 자바 언어 및 사례 소개를 이해하고, 실질적인 예제와 자바 과정은 UML 아이콘을 통해 쉽게 하나씩 설명을, 코드의 중요한 부분에 해당 도서에 대한 독자들이보다 쉽게 해석할 수 있도록 태그를 추가할 수있습니다. 이것은 소스 책이다. 이 테스트를 통과했다.
File list:
Java多线程设计模式源码
............\ActiveObject
............\............\A2
............\............\..\activeobject
............\............\..\............\ActivationQueue.java
............\............\..\............\ActiveObject.java
............\............\..\............\ActiveObjectFactory.java
............\............\..\............\AddRequest.java
............\............\..\............\DisplayStringRequest.java
............\............\..\............\FutureResult.java
............\............\..\............\MakeStringRequest.java
............\............\..\............\MethodRequest.java
............\............\..\............\Proxy.java
............\............\..\............\RealResult.java
............\............\..\............\Result.java
............\............\..\............\SchedulerThread.java
............\............\..\............\Servant.java
............\............\..\AddClientThread.java
............\............\..\Main.java
............\............\A3_1
............\............\....\activeobject
............\............\....\............\ActivationQueue.java
............\............\....\............\ActiveObject.java
............\............\....\............\ActiveObjectFactory.java
............\............\....\............\FutureResult.java
............\............\....\............\MethodRequest.java
............\............\....\............\Proxy.java
............\............\....\............\RealResult.java
............\............\....\............\Result.java
............\............\....\............\SchedulerThread.java
............\............\....\............\SearchRequest.java
............\............\....\............\Servant.java
............\............\....\Main.java
............\............\....\MyFrame.java
............\............\A3_2
............\............\....\activeobject
............\............\....\............\ActivationQueue.java
............\............\....\............\ActiveObject.java
............\............\....\............\ActiveObjectFactory.java
............\............\....\............\Display.java
............\............\....\............\FutureResult.java
............\............\....\............\MethodRequest.java
............\............\....\............\Proxy.java
............\............\....\............\RealResult.java
............\............\....\............\Result.java
............\............\....\............\SchedulerThread.java
............\............\....\............\SearchRequest.java
............\............\....\............\Servant.java
............\............\....\Main.java
............\............\....\MyFrame.java
............\............\Q2
............\............\..\AddClientThread.java
............\............\..\Main.java
............\............\Sample
............\............\......\activeobject
............\............\......\............\ActivationQueue.java
............\............\......\............\ActiveObject.java
............\............\......\............\ActiveObjectFactory.java
............\............\......\............\DisplayStringRequest.java
............\............\......\............\FutureResult.java
............\............\......\............\MakeStringRequest.java
............\............\......\............\MethodRequest.java
............\............\......\............\Proxy.java
............\............\......\............\RealResult.java
............\............\......\............\Result.java
............\............\......\............\SchedulerThread.java
............\............\......\............\Servant.java
............\............\......\DisplayClientThread.java
............\............\......\Main.java
............\............\......\MakerClientThread.java
............\AppendixA
............\.........\Main.java
............\.........\MyFrame.java
............\AppendixB
............\.........\Others
............\.........\......\Correct
............\.........\......\.......\Main.java
............\.........\......\.......\MySystem.java
............\.........\......\DoubleCheckedLocking
............\.........\......\....................\Main.java
............\.........\......\....................\MySystem.java
............\.........\......\SingleThreadedExecution
............\.........\......\.......................\Main.java
............\.........\......\.......................\MySystem.java
............\Balking
............\.......\A2_1
............\.......\....\ChangerThread.TXT
............\.......\....\Data.java
............\.......\....\Main.java
............\.......\....\SaverThread.java
............\.......\A2_2
............\.......\....\ChangerThread.java
............\.......\....\Data.java
............\.......\....\Main.java
............\.......\....\SaverThread.java
............\.......\A4
............\.......\..\LivenessException.java
............\.......\..\Main.java
............\.......\..\Request.java
............\.......\..\RequestQueue.java
............\.......\..\TalkThread.java
............\.......\Others
............\.......\......\Init1
............\.......\......\.....\Something.java
............\.......\......\Timeout
............\.......\......\.......\Host.java
............\.......\......\.......\Main.java
............\.......\......\.......\TimeoutException.java
............\.......\Q4
............\.......\..\LivenessException.java
............\.......\..\RequestQueue.java
............\.......\Q5
............\.......\..\Main.java
............\.......\..\TestThread.java
............\.......\Sample
............\.......\......\ChangerThread.java
............\.......\......\Data.java
............\.......\......\Main.java
............\.......\......\SaverThread.java
............\Future
............\......\A3
............\......\..\content
............\......\..\.......\AsyncContentImpl.java
............\......\..\.......\Content.java
............\......\..\.......\Retriever.java
............\......\..\.......\SyncContentImpl.java
............\......\..\Main.java
............\......\A4
............\......\..\Data.java
............\......\..\FutureData.java
............\......\..\Host.java
............\......\..\Main.java
............\......\..\RealData.java
............\......\Q3
............\......\..\content
............\......\..\.......\Content.java
............\......\..\.......\Retriever.java
............\......\..\.......\SyncContentImpl.java
............\......\..\Main.java
............\......\Q4
............\......\..\Data.java
............\......\..\FutureData.java
............\......\..\Host.java
............\......\..\Main.java
............\......\..\RealData.java
............\......\Sample
............\......\......\Data.java
............\......\......\FutureData.java
............\......\......\Host.java
............\......\......\Main.java
............\......\......\RealData.java
............\GuardedSuspension
............\.................\A3
............\.................\..\ClientThread.java
............\.................\..\Main.java
............\.................\..\Request.java
............\.................\..\RequestQueue.java
............\.................\..\ServerThread.java
............\.................\A5
............\.................\..\Main.java
............\.................\..\Request.java
............\.................\..\RequestQueue.java
............\.................\..\TalkThread.java
............\.................\A6
............\.................\..\ClientThread.java
............\.................\..\Main.TXT
............\.................\..\Request.java
............\.................\..\RequestQueue.java
............\.................\..\ServerThread.java
............\.................\Q5
............\.................\..\Main.java
............\.................\..\Request.java
............\.................\..\RequestQueue.java
............\.................\..\TalkThread.java
............\.................\Q6
............\.................\..\ClientThread.java
............\.................\..\Main.java
............\.................\..\Request.java
............\.................\..\RequestQueue.java
............\.................\..\ServerThread.java
............\.................\Sample
............\.................\......\ClientThread.java
............\.................\......\Main.java
............\.................\......\Request.java
............\.................\......\RequestQueue.java
............\.................\......\ServerThread.java
............\Immutable
............\.........\A2
............\.........\..\Main JAVA.TXT
............\.........\A4
............\.........\..\Main.java
............\.........\..\UserInfo.java
............\.........\A5_1
............\.........\....\Line.java
............\.........\....\Main.java
............\.........\....\Point.java
............\.........\A5_2
............\.........\....\Line.java
............\.........\....\Main.java
............\.........\....\Point.java
............\.........\A6_1
............\.........\....\person
............\.........\....\......\ImmutablePerson.java
............\.........\....\......\MutablePerson.java
............\.........\....\Main.java
............\.........\A6_2
............\.........\....\person
............\.........\....\......\ImmutablePerson.java
............\.........\....\......\MutablePerson.java
............\.........\....\Main.java
............\.........\Q2
............\.........\..\Main.java
............\.........\Q3
............\.........\..\Main.java
............\.........\Q4
............\.........\..\UserInfo.java
............\.........\Q5
............\.........\..\Line.java
............\.........\..\Point.java
............\.........\Q6
............\.........\..\ImmutablePerson.java
............\.........\..\MutablePerson.java
............\.........\Sample
............\.........\......\Main.java
............\.........\......\Person.java
............\.........\......\PrintPersonThread.java
............\Introduction1
............\.............\A4
............\.............\..\Bank.java
............\.............\..\ClientThread.java
............\.............\..\Main.java
............\.............\Others
............\.............\......\Printer
............\.............\......\.......\Main.java
............\.............\......\.......\Printer.java
............\.............\......\PrintThread
............\.............\......\...........\Main.java
............\.............\......\...........\PrintThread.java
............\.............\......\SingleThread
............\.............\......\............\Main.java
............\.............\......\Sleep
............\.............\......\.....\Main.java
............\.............\......\Sync
............\.............\......\....\Bank.java
............\.............\......\TwoThreads
............\.............\......\..........\Main.java
............\.............\......\..........\MyThread.java
............\.............\Q3
............\.............\..\Main.java
............\.............\..\PrintThread.java
............\.............\Q4
............\.............\..\Bank.java
............\ProducerConsumer
............\................\A4
............\................\..\EaterThread.java
............\................\..\Main.java
............\................\..\MakerThread.java
............\................\..\Table.java
............\................\A5
............\................\..\ClearThread.java
............\................\..\EaterThread.java
............\................\..\Main.java
............\................\..\MakerThread.java
............\................\..\Table.java
............\................\A6
............\................\..\EaterThread.java
............\................\..\Main.java
............\................\..\MakerThread.java
............\................\..\Table.java
............\................\A7
............\................\..\Host.java
............\................\..\Main.java
............\................\A8
............\................\..\EaterThread.java
............\................\..\LazyThread.java
............\................\..\Main.java
............\................\..\MakerThread.java
............\................\..\Table.java
............\................\A9
............\................\..\Main.java
............\................\..\Something.java
............\................\Q2
............\................\..\EaterThread.java
............\................\..\Main.java
............\................\..\MakerThread.java
............\................\..\Table.java
............\................\Q7
............\................\..\Host.java
............\................\Q8
............\................\..\Host.java
............\................\..\Table.java
............\................\Q9
............\................\..\Something.java
............\................\Sample
............\................\......\EaterThread.java
............\................\......\Main.java
............\................\......\MakerThread.java
............\................\......\Table.java
............\ReadWriteLock
............\.............\A2
............\.............\..\Data.java
............\.............\..\Main.java
............\.............\..\ReaderThread.java
............\.............\..\WriterThread.java
............\.............\A3_1
............\.............\....\Data.java
............\.............\....\Main.java
............\.............\....\ReaderThread.java
............\.............\....\ReadWriteLock.java
............\.............\....\WriterThread.java
............\.............\A3_2
............\.............\....\Data.java
............\.............\....\Main.java
............\.............\....\ReaderThread.java
............\.............\....\WriterThread.java
............\.............\A4
............\.............\..\readwritelock
............\.............\..\.............\Data.java
............\.............\..\.............\GuardStrategy.java
............\.............\..\.............\ReadWriteStrategy.java
............\.............\..\Main.java
............\.............\..\ReaderThread.java
............\.............\..\WriterThread.java
............\.............\Q2
............\.............\..\Data.java
............\.............\Q3
............\.............\..\Data.java
............\.............\Q5
............\.............\..\Data.java
............\.............\Q6
............\.............\..\Data.java
............\.............\..\Main.java
............\.............\..\ReaderThread.java
............\.............\..\ReadWriteLock.java
............\.............\..\WriterThread.java
............\.............\Sample
............\.............\......\Data.java
............\.............\......\Main.java
............\.............\......\ReaderThread.java
............\.............\......\ReadWriteLock.java
............\.............\......\WriterThread.java
............\SingleThreadedExecution
............\.......................\A1
............\.......................\..\Gate.java
............\.......................\..\Main.java
............\.......................\..\UserThread.java
............\.......................\A5
............\.......................\..\CrackerThread.java
............\.......................\..\Main.java
............\.......................\..\SecurityGate.java
............\.......................\A6_1
............\.......................\....\EaterThread.java
............\.......................\....\Main.java
............\.......................\....\Tool.java
............\.......................\A6_2
............\.......................\....\EaterThread.java
............\.......................\....\Main.java
............\.......................\....\Pair.java
............\.......................\....\Tool.java
............\.......................\A7_1
............\.......................\....\Gate.java
............\.......................\....\Main.java
............\.......................\....\Mutex.java
............\.......................\....\UserThread.java
............\.......................\A7_2
............\.......................\....\Gate.java
............\.......................\....\Main.java
............\.......................\....\Mutex.java
............\.......................\....\UserThread.java
............\.......................\Q4
............\.......................\..\Point.java
............\.......................\Q5
............\.......................\..\SecurityGate.java
............\.......................\Q6
............\.......................\..\EaterThread.java
............\.......................\..\Main.java
............\.......................\..\Tool.java
............\.......................\Q7
............\.......................\..\Gate.java
............\.......................\Sample1
............\.......................\.......\Gate.java
............\.......................\.......\Main.java
............\.......................\.......\UserThread.java
............\.......................\Sample2
............\.......................\.......\Gate.java
............\.......................\.......\Main.java
............\.......................\.......\UserThread.java
............\ThreadPerMessage
............\................\A2
............\................\..\Helper.java
............\................\..\Host.java
............\................\..\Main.java
............\................\A3
............\................\..\Helper.java
............\................\..\Host.java
............\................\..\Main.java
............\................\A4_1
............\................\....\Helper.java
............\................\....\HelperThread.java
............\................\....\Host.java
............\................\....\Main.java
............\................\A4_2
............\................\....\Host.java
............\................\....\Main.java
............\................\A5_1
............\................\....\Main.java
............\................\....\MyFrame.java
............\................\....\Service.java
............\................\A5_2
............\................\....\Main.java
............\................\....\MyFrame.java
............\................\....\Service.java
............\................\A5_3
............\................\....\Main.java
............\................\....\MyFrame.java
............\................\....\Service.java
............\................\A5_4
............\................\....\Main.java
............\................\....\MyFrame.java
............\................\....\Service.java
............\................\A6
............\................\..\Main.java
............\................\..\MiniServer.java
............\................\..\Service.java
............\................\A7_1
............\................\....\Blackhole.java
............\................\....\Main.java
............\................\A7_2
............\................\....\Blackhole.java
............\................\....\Main.java
............\................\Q3
............\................\..\Host.java
............\................\Q5
............\................\..\Main.java
............\................\..\MyFrame.java
............\................\..\Service.java
............\................\Q6
............\................\..\Main.java
............\................\..\MiniServer.java
............\................\..\Service.java
............\................\Q7
............\................\..\Blackhole.java
............\................\..\Main.java
............\................\Sample
............\................\......\Helper.java
............\................\......\Host.java
............\................\......\Main.java
............\ThreadSpecificStorage
............\.....................\A3
............\.....................\..\ClientThread.java
............\.....................\..\Log.java
............\.....................\..\Main.java
............\.....................\..\TSLog.java
............\.....................\Q4
............\.....................\..\ClientThread.java
............\.....................\..\Log.java
............\.....................\..\Main.java
............\.....................\..\TSLog.java
............\.....................\Sample1
............\.....................\.......\Log.java
............\.....................\.......\Main.java
............\.....................\Sample2
............\.....................\.......\ClientThread.java
............\.....................\.......\Log.java
............\.....................\.......\Main.java
............\.....................\.......\TSLog.java
............\TwoPhaseTermination
............\...................\A2
............\...................\..\CountupThread.java
............\...................\..\Main.java
............\...................\A3
............\...................\..\CountupThread.java
............\...................\..\Main.java
............\...................\A4
............\...................\..\CountupThread.java
............\...................\..\GracefulThread.java
............\...................\..\Main.java
............\...................\A5
............\...................\..\GracefulThread.java
............\...................\..\Main.java
............\...................\..\MyFrame.java
............\...................\..\Service.java
............\...................\..\ServiceThread.java
............\...................\A7
............\...................\..\HanoiThread.java
............\...................\..\Main.java
............\...................\Others
............\...................\......\Hook
............\...................\......\....\Main.java
............\...................\Q2
............\...................\..\CountupThread.java
............\...................\..\Main.java
............\...................\Q4
............\...................\..\GracefulThread.java
............\...................\Q5
............\...................\..\Main.java
............\...................\..\MyFrame.java
............\...................\..\Service.java
............\...................\Q7
............\...................\..\HanoiThread.java
............\...................\..\Main.java
............\...................\Sample
............\...................\......\CountupThread.java
............\...................\......\Main.java
............\WorkerThread
............\............\A2
............\............\..\Channel.java
............\............\..\ClientThread.java
............\............\..\Main.java
............\............\..\Request.java
............\............\A3_1
............\............\....\Channel.java
............\............\....\ClientThread.java
............\............\....\Main.java
............\............\....\Request.java
............\............\....\WorkerThread.java
............\............\A3_2
............\............\....\Channel.java
............\............\....\ClientThread.java
............\............\....\Main.java
............\............\....\Request.java
............\............\A5
............\............\..\Main.java
............\............\..\MyFrame.java
............\............\A6
............\............\..\Channel.java
............\............\..\ClientThread.java
............\............\..\Main.java
............\............\..\Request.java
............\............\..\WorkerThread.java
............\............\Q5
............\............\..\Main.java
............\............\..\MyFrame.java
............\............\Q6
............\............\..\Main.java
............\............\Sample
............\............\......\Channel.java
............\............\......\ClientThread.java
............\............\......\Main.java
............\............\......\Request.java
............\............\......\WorkerThread.java